728x90
반응형
WPF & C# - 시작프로그램 등록 ( Run / 레지스트리 / 윈도우 시작 / 자동실행 / AutoStart ) |
시작프로그램등록 복사해서 붙여넣기 하려고 남겨놓는다.
가장 심플하다고 생각한다.
시작프로그램 레지스트리에 관련해서 자세한부분은 http://insurang.tistory.com/34 을 참고하시면 됩니다.
시작프로그램 등록 ( REGKey 수정 )
MainWindow.xaml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <Window x:Class="testRunPrograms_Regedit_.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:testRunPrograms_Regedit_" mc:Ignorable="d" Title="MainWindow" Height="350" Width="525" Loaded="Window_Loaded"> <Grid> <CheckBox x:Name="chkRunProgram" Content="시작프로그램 등록" HorizontalAlignment="Center" VerticalAlignment="Center" Click="CheckBox_Click"/> </Grid> </Window> | cs |
MainWindow.xaml.cs
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | using Microsoft.Win32; using System; using System.Windows; namespace testRunPrograms_Regedit_ { /// <summary> /// MainWindow.xaml에 대한 상호 작용 논리 /// </summary> public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } private void Window_Loaded(object sender, RoutedEventArgs e) { // 시작프로그램 등록 여부 확인 if (runRegKey.GetValue("프로그램명") == null) chkRunProgram.IsChecked = false; else chkRunProgram.IsChecked = true; } RegistryKey runRegKey = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true); private void CheckBox_Click(object sender, RoutedEventArgs e) { if (chkRunProgram.IsChecked == true) { runRegKey.SetValue("프로그램명", Environment.CurrentDirectory + "\\" + AppDomain.CurrentDomain.FriendlyName); } if (chkRunProgram.IsChecked == false) { runRegKey.DeleteValue("프로그램명", false); } } } } | cs |
별다른 부연설명이 필요없지 않을까 싶다.
일단 처음부분의 Window_Loaded 에서 윈도우창이 뜨면서 레지스트리에 시작프로그램이 등록 여부를 확인한다.
체크박스를 클릭할때마다 등록 삭제를 반복해준다.
만약, 비슷한 Checked 와 UnChecked 이벤트에 등록하게 되면 처음부분의 Window_Loaded 에서 중복으로 체크하게 되니 주의하자.
728x90
반응형
'Programing (프로그래밍) > WPF & C# (C Sharp)' 카테고리의 다른 글
[자작] SevenZipSharp 이용한 ZIP 압축 해제 (0) | 2018.01.03 |
---|---|
WPF & C# - Path 추출 또는 합치기 ( 파일명, 경로 / System.IO.Path 사용 / 파일 / 확장자 / extension / 문자열 ) (0) | 2018.01.03 |
[자작] ZIP 파일 암호 찾기 (0) | 2018.01.03 |
[자작] TimeAlram ( 정시알람 / 정각알람 / 정각알림 / 정시알림 / 날씨 / 기상청 / weather ) (4) | 2018.01.02 |
트레이아이콘 ( TrayIcon / notifyIcon ) (0) | 2018.01.02 |
라디오버튼 ( Radio Button / Select / 설문조사 / XAML / 디자인 ) (0) | 2018.01.02 |
WPF & C# - DispatcherTimer ( ticks / 타이머 / 초 / 반복 / Repeat / TimeSpan ) (0) | 2017.12.29 |
WPF C# - 단일 스레드 예제( Threading/ Thread ) (0) | 2017.12.28 |