Konuyu görüntüle
IUCODERS FORUM > Programlama > .NET > Program?n Otomatik Aç?lmas?
Yazar
yuxexes


avatar

Kayıt: 10.04.2006
01.06.2006-22:58 #7377
Merhaba Arkadaşlar

C# yaptığım programın bilgisayar açılınca otomatik açılmasını istiyorum.Bu işlemi yapacak kod veya yöntemler nelerdir.





?NSANI YA?AT Ki DEVLET YA?ASIN...



Yazar
clairvoyant


avatar
Antalya
Kayıt: 05.05.2006
01.06.2006-23:23 #7378
Programın kendisini ya da kısayolunu başlangıç klasörüne ekleyebilirsin. Oturum açılınca program otomatik olarak çalışır. Bir de C:\AUTOEXEC.BAT dosyasının içine programı çalıştıracak komut satırını ekleyince de sanırım program çalışır fakat windows yüklenmeden çalışır ve sisteme belki zarar verebilir. Birincisi daha iyi. Ama bir hizmet programı gibi olmasını istiyorsan bilmiyorum.





Let`s make this world a better place to live !

Yazar
ali


avatar
istanbul
admin
Kayıt: 04.01.2006
01.06.2006-23:31 #7380
derlediğğin dosyayı başlat > programlar > başlangıç altına kopyalaman yada kısayol atman yeterlidir.

autoexec.bat dosyasına yazarsan çalışmayabilir , gerekli kütüphaner yüklenmediği için.

üçüncü bir yöntem registeriden yapılabilir en iyiside budur.





free software is a matter of liberty, not price. to understand the concept, you should think of free speech, not free beer.
Yazar
yuxexes


avatar

Kayıt: 10.04.2006
01.06.2006-23:35 #7382
teşekkürler.Bu işlemi otomatik olarak nasıl yapabiliriz.Programın setup'ını yaptıktan soran kurulan bilgisayarda otomatik olarak başlaması lazım





?NSANI YA?AT Ki DEVLET YA?ASIN...



Yazar
ali


avatar
istanbul
admin
Kayıt: 04.01.2006
01.06.2006-23:45 #7384
kurulum programlarında (instal şild vs.) programın kurulum bittikten sonra registery ye istenen degerler yazılabiliyor. bu da olmazsa program ilk açılışnda yazdırırsın ve her açılışta kontrol edersin ares misalismile

registery de
lokal maşin > software > mikrosoft > windows > run

altına yazdırdığın registery keyleri windows açılışnda çalıştırılır.





free software is a matter of liberty, not price. to understand the concept, you should think of free speech, not free beer.
Yazar
caglarmenguc


avatar
istanbul
Kayıt: 29.01.2006
02.06.2006-10:05 #7401
Microsoft.Win32.Registry.LocalMachine.CreateSubKey( @"SOFTWARE\Microsoft\Windows\CurrentVersion\Run\ProgramTanımı").SetValue("Programın Tanımı", _deger);

gibi olmasi lazim.

kafadan yazdigim icin imla hatalari olabilir. bu islemi tek satirda yapabilirsin. netten aratirsan daha iyi olur. ancak bana kalirsa windows servisi yazmak gerek. bu konuda nette epey dokuman mevcut.

iyi calismalar...






Life is a game of cards...
A good player, even with a bad hand of cards, will play well and emerge a winner...


Yazar
tarikkranda


avatar

Kayıt: 07.01.2006
02.06.2006-11:07 #7402
Komutanım Caglar asker ocagından vermis cevabısmile
Ufak bir duzeltme yapayım komutanımın cevabına:))
Runklasoru bu yoldaki run klasoru olmalı :

HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRun


Programin form load una asagidaki kodu yazarsan her calistiginda kendi yolunu bu register bolgesine yazacaktır.

Microsoft.Win32.RegistryKey reg = Microsoft.Win32.Registry.LocalMachine.CreateSubKey(@"SoftwareMicrosoftWindowsCurrentVersionRun");
reg.SetValue("appl",Application.ExecutablePath);


Not: olayın esas cozumu windwos servisi yazmaktır.





Yazar
caglarmenguc


avatar
istanbul
Kayıt: 29.01.2006
05.06.2006-11:03 #7485
tarikkranda yazdi
 
Komutanım Caglar asker ocagından vermis cevabısmile
Ufak bir duzeltme yapayım komutanımın cevabına:))
Runklasoru bu yoldaki run klasoru olmalı :


asker ocaginda ancak bu kadar hatirlaniyor be tarik biggrin

 

Not: olayın esas cozumu windwos servisi yazmaktır.

kesinlikle...





Life is a game of cards...
A good player, even with a bad hand of cards, will play well and emerge a winner...


Yazar
4akal


avatar
EU
Kayıt: 23.01.2006
06.06.2006-00:14 #7537
aynı şekilde pocker PC de bir programın açılışta çalışması için registy nin hangi kısmında degişiklik yapmalıyız. yukarıda belirtilen aynı yer olabilirmi ?iyi çalışmalar.





Hayat ald?g?m?z nefesle ölçülemez, nefesimizin kesildigi anlarla ölçülebilir!
Yazar
ender


avatar
iskenderun
Kayıt: 14.01.2006
26.06.2006-23:57 #8224
Yukarıdaki kod parçasını yazdım fakat çalışmadı.Program otomatik açılmııyor.Başka bir yolu var mı otomatik açılmanın?(windows servisi dışında?)







Yazar
caglarmenguc


avatar
istanbul
Kayıt: 29.01.2006
27.06.2006-11:24 #8233
ender yazdi
 
Yukarıdaki kod parçasını yazdım fakat çalışmadı.Program otomatik açılmııyor.Başka bir yolu var mı otomatik açılmanın?(windows servisi dışında?)


yukarıda verilen örneğin çalışıyor olması gerekiyor (su an deneyemediğim için emin değilim) ancak reg.SetValue(... satırından sonra şöyle bir kontrol koyabilirsiniz;

if( reg.Error == true )
MessageBox.Show( reg.ErrorMessage );
else
MessageBox.Show( "Hata yok" );
/* kaydın regedit e yazılıp yazılmadığına bir bakın. eğer yazılmıyorsa adaware(adwatch) ya da benzeri koruyucu programlardan şüphelenebilrsiniz. */





Life is a game of cards...
A good player, even with a bad hand of cards, will play well and emerge a winner...


Yazar
tarikkranda


avatar

Kayıt: 07.01.2006
27.06.2006-15:48 #8251
4akal yazdi
 
aynı şekilde pocker PC de bir programın açılışta çalışması için registy nin hangi kısmında degişiklik yapmalıyız. yukarıda belirtilen aynı yer olabilirmi ?iyi çalışmalar.


Muhtemelenayni yer olmasi gerekir, cunku yola baktigimda farkli bir sey sezinlemiyorum ancak denemeden de sallamak olmaz. Bir deneyip sonucu buradan paylasirsaniz bize de faydasi olur, yeni proje acmiyalim bosunasmile





Yazar
tarikkranda


avatar

Kayıt: 07.01.2006
27.06.2006-15:52 #8252
ender yazdi
 
Yukarıdaki kod parçasını yazdım fakat çalışmadı.Program otomatik açılmııyor.Başka bir yolu var mı otomatik açılmanın?(windows servisi dışında?)

Microsoft.Win32.RegistryKey reg = Microsoft.Win32.Registry.LocalMachine.CreateSubKey(@"SoftwareMicrosoftWindowsCurrentVersionRun");
reg.SetValue("appl",Application.ExecutablePath);


Bu kod calismali neden calismamis olabilir ki. Calistigina eminim. Daha onceki kod parcasinda Software slash Microsoft slash ... seklinde aradaki slashlar cikmamis. Caglarin 05.06.2006 daki postuna bakarsaniz onda goruluyor, yukarıda tyazdıgımda da goruluyor olmasi lazim. Araya slash ları eklemeyi unutmamıssındır umarım. Ayrıca bu islemi formload icinde yapıyorsun degil mi? Yoksa yerini degistirince yeniden bir register islemi gerceklesmeli, form load da yazarsan bunu saglamıs oluyorsun her turlu.

Yukarıdaki kod test edilip, onaylanmıstır....





Yazar
4akal


avatar
EU
Kayıt: 23.01.2006
28.06.2006-16:55 #8302
tarikkranda yazdi
 

Muhtemelenayni yer olmasi gerekir, cunku yola baktigimda farkli bir sey sezinlemiyorum ancak denemeden de sallamak olmaz. Bir deneyip sonucu buradan paylasirsaniz bize de faydasi olur, yeni proje acmiyalim bosunasmile


Microsoft.Win32.RegistryKey reg = Microsoft.Win32.Registry.LocalMachine.CreateSubKey(@"SoftwareMicrosoftWindowsCurrentVersionRun");
reg.SetValue("app", "Program Files\app\app.exe");
reg.Close();

Yukarıdaki kodu denedim ancak bir sonuca ulaşamadım, registriye yazmasına yazıyor da resetin ardından program çalışmıyor. Başka bir yol varmı bilen varmı?



Bir sorum daha olacak, PocketPC de formu gizlemek mümkünmü? Programı arka planda çalıştırmak istiyorum ama PocketPC de formu birtürlü gizleyemedim. Windows uygulaması olsa bukadar zorluk çekmezdim herhalde not talking.

İyi çalışmalar





Hayat ald?g?m?z nefesle ölçülemez, nefesimizin kesildigi anlarla ölçülebilir!
Yazar
caglarmenguc


avatar
istanbul
Kayıt: 29.01.2006
28.06.2006-17:05 #8307
4akal yazdi [quote
Microsoft.Win32.RegistryKey reg = Microsoft.Win32.Registry.LocalMachine.CreateSubKey(@"SoftwareMicrosoftWindowsCurrentVersionRun");
reg.SetValue("app", "Program Filesappapp.exe");
reg.Close();
[/quote]

disk bildirimini göremiyorum. "C:\Program Files\app\app.exe" olması gerekmiyor mu?





Life is a game of cards...
A good player, even with a bad hand of cards, will play well and emerge a winner...


1 2
Del.icio.us
Digg
Facebook
Furl
Google
Blink
Simpy
Spurl
Y! MyWeb