C# WPF Programı Başlangıçta Çalıştırmak

Hello

Hectopat
Katılım
2 Temmuz 2014
Mesajlar
555
Makaleler
2
Daha fazla  
Cinsiyet
Erkek
Program'ı Windows açıldığında açılmasını istiyorum . WinForms'da bildiğim kod ile oluyor ancak WPF'de olmuyor . Bir sürü yerde konu açtım ama tam cevap alamadım . Yardım ederseniz sevinirim .
 
WPF'da bende bilmiyorum fakat size önerim ;
bilgisayarın başlangıçta çalıştırdığı programların yanına eklemeniz... Eğer windows 8 veya 8.1 kullanıyorsanız
" C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp "
Uzantısına programın exe'sini kopyalayıp deneyebilirsiniz :)
 
Farklı bilgisayarlarda kullanılırsa program bu yol biraz dolaylı geliyor . Checkbox ile yapacaktım kodu bilseydim ama bilmiyorum . @Fatih Apaydın bu kodunda bilginiz varmıdır ?
 
Tasarım kodu
Kod:
<Window x:Class="WpfApplication1.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <StackPanel HorizontalAlignment="Center">
            <TextBlock Text="AYARLAR" FontSize="36" HorizontalAlignment="Center" Margin="0,0,0,20"/>
            <CheckBox x:Name="chkIsWinStart" Content="Uygulama Windows başlangıcında otomatik başlasın." Checked="chkIsWinStart_Checked" Unchecked="chkIsWinStart_Checked"/>
        </StackPanel>
    </Grid>
</Window>

Kodunuzun en başına "using Microsoft.Win32; using System.Reflection;" satırlarını ilave edin.
Seçme yada seçimin temizlenmesi durumunu ele alan basit kod:
Kod:
        /*
         Checkbox seçilirse uygulama windows başlangıcında başlayacak
         checkbox temizlenirse de başlamayacak.
         */
        private void chkIsWinStart_Checked(object sender, RoutedEventArgs e)
        {
            var aktifCheckBox = sender as CheckBox;

            if (aktifCheckBox != null)         
            {
                /*
                 OpenSubKey metoduna geçilen "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run" yolu
                 windowsun başlangıcında çalışan programların kayıt mekanı
                */
                RegistryKey rkApp = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);

                if (aktifCheckBox.IsChecked.Value == true)
                {
                    /*
                     Registry de "OrnekUygulama" adında bir key oluşturulacak ve bu keyin değeri de
               SetValue metodunun 2. argümanı olan "Assembly.GetExecutingAssembly().Location" uygulamanın exesinin diskteki tam yolu
                    */
                    rkApp.SetValue("OrnekUygulama", Assembly.GetExecutingAssembly().Location);
                }
                else if (aktifCheckBox.IsChecked.Value == false)                                                 
                    rkApp.DeleteValue("OrnekUygulama", false);//Keyi silelim ki program windows başlangıcında otomatik çalışmasın.                         
            }

        }
 
Son düzenleme:
Uyarı! Bu konu 10 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Geri
Yukarı