none
C# Başlangıçtan Çalıştırma RRS feed

  • Soru

  • Merhaba, uygulamam bilgisayar açıldığında direkt olarak açılmasını istiyorum. Nette biraz araştırdım bulduğum kaynaklarla denemeler yaptım ancak başarılı olamadım. Clickonce kullanarak uygulamamı dağıtıyorum bu sebep olmuş olabilir mi açılmamasına?

    RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Run", true);
    key.SetValue("ProgramAdı", "\"" + Application.ExecutablePath + "\"");

    11 Eylül 2020 Cuma 07:57

Yanıtlar

  • Anladım. Problem şu, uygulama dağıtım ağını yayınlamak gerekiyor aslında

    RegistryKey key = Registry.CurrentUser.OpenSubKey( @"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", true); string startPath = @"\Uygulama Adresi\uygulamadi.appref-ms";

                key.SetValue(ProgramAdi, startPath);

    Bu kısmı dağıtım ağınıza göre güncelleyin.

    "\Uygulama Adresi\uygulamadi.appref-ms"

    Nedeni şu, uygulama tasarım anında proje dosyası/release içerisinde görünüyor. çalıştırdığınızda proje ismi ile regedit'e kayıt atılmış oluyor. dağıtımdan sonra uygulama ismi aynı fakat adres farklı oluyor. bu çalışmasına engel olabilir. 

    • Başlat -> Çalıştırregedit yazıp enterlayın.
    • Software\Microsoft\Windows\CurrentVersion\Run adresine girin
    • Uygulamanızın hangi adres ile kayıt olduğunu kontrol edin.


    Sorunuzun yanıtı bu ise "Yanıt Olarak Öner" olarak işaretleyin, eğer faydalı bir yorum ise "Oy Ver"erek forumun işleyişine katkıda bulunabilirsiniz





    11 Eylül 2020 Cuma 09:57

Tüm Yanıtlar

  • 1.si "ProgramAdı" yerine programınızın ismini yazın yada

    string programAdi = System.Diagnostics.Process.GetCurrentProcess().ProcessName + ".exe";

    kodlarınızı formun yapıcı metodu içerisine yada load eventine yazınız :

     public Form1()
            {
                InitializeComponent();
                try
                {
    		RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Run", true);
                    key.SetValue(programAdi, "\"" + Application.ExecutablePath + "\""); 
                }
                catch 
                {
                    
                }
            }


    Program kurulur kurulmaz bilgisayarın açılışına eklenmez, en az 1 kez çalışmış olması gerekiyor.


    Sorunuzun yanıtı bu ise "Yanıt Olarak Öner" olarak işaretleyin, eğer faydalı bir yorum ise "Oy Ver"erek forumun işleyişine katkıda bulunabilirsiniz






    11 Eylül 2020 Cuma 08:44
  • hata denetimi yada aynı kaydın var olup olmadığını sorgulamadan çok fazla deneme yaptıysanız regedit'den Software\Microsoft\Windows\CurrentVersion\Run altını bir kontrol edin. gereksiz bazı anlamsız kayıtlar sistemin açılışında çalıştırılmaya çalışılıyor olabilir. 
    11 Eylül 2020 Cuma 09:02
  • Dediklerinizi uygulamıştım zaten ancak olmamıştı şimdi tekrar uyguladım. Ancak uygulamayı birtürlü açılmıyor.

    Kod sadece başlangıça ekledi aktif hale getirmiyor.

     public partial class Host : Form
        {
            public Host()
            {
                string programAdi = System.Diagnostics.Process.GetCurrentProcess().ProcessName + ".exe";
                InitializeComponent();
                try
                {
                    RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Run", true);
                    key.SetValue(programAdi, "\"" + Application.ExecutablePath + "\"");
                }
                catch
                {
    
                }
    
            }

    11 Eylül 2020 Cuma 09:28
  • Anladım. Problem şu, uygulama dağıtım ağını yayınlamak gerekiyor aslında

    RegistryKey key = Registry.CurrentUser.OpenSubKey( @"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", true); string startPath = @"\Uygulama Adresi\uygulamadi.appref-ms";

                key.SetValue(ProgramAdi, startPath);

    Bu kısmı dağıtım ağınıza göre güncelleyin.

    "\Uygulama Adresi\uygulamadi.appref-ms"

    Nedeni şu, uygulama tasarım anında proje dosyası/release içerisinde görünüyor. çalıştırdığınızda proje ismi ile regedit'e kayıt atılmış oluyor. dağıtımdan sonra uygulama ismi aynı fakat adres farklı oluyor. bu çalışmasına engel olabilir. 

    • Başlat -> Çalıştırregedit yazıp enterlayın.
    • Software\Microsoft\Windows\CurrentVersion\Run adresine girin
    • Uygulamanızın hangi adres ile kayıt olduğunu kontrol edin.


    Sorunuzun yanıtı bu ise "Yanıt Olarak Öner" olarak işaretleyin, eğer faydalı bir yorum ise "Oy Ver"erek forumun işleyişine katkıda bulunabilirsiniz





    11 Eylül 2020 Cuma 09:57