Startup

Napsal Pavel v neděli 12.2. 2006, 9:35

Jak pracovat se startup prvky, jak je zjisťovat a jak je přidávat nebo mazat v C# ? To na netu skoro nejde najít ...

Když jsem to hledal, tak jsem našel jen práci s registry, ale ne se startupem. Možná jsem nehledal dobře, ale našel jsem jenom strom registrových klíčů pro startup.

Všechny programy, které se po startu spouštějí, jsou umísteny v klíčích registrů HKEY_LOCAL_MACHINE ( zkráceně HKLM )\Software\Microsoft\Windows\CurrentVersion\Run nebo RunOnce. Když tedy chceme se startup prvky libovolně pracovat, tak musíme manipulovat s tímto klíčem / i. A jak ? Jednoduše, pomocí třídy RegistryKey ze jmenného prostoru Microsoft.Win32.

Pokud chceme do startupu přidat nějaký program, není nic jednoduššího, než to udělat.

using Microsoft.Win32;  // přidání jmenného prostoru se třídou RegistryKey
...
RegistryKey klic=Registry.LocalMachine.OpenSubKey("Software\\Microsoft\\Windows\\CurrentVersion\\Run",true);  // otevře registrový klíč startup prvků s možností zápisu
klic.SetValue("Pokus",Environment.CurrentDirectory+"\\startup.exe");  // přidání prvku s názvem Pokus a hodnotou programu současného adresáře jménem startup.exe
...

Jak vidíte, přidávání do startupu je jednoduché. Mazání je ještě jednodušší :

klic.DeleteValue("Pokus");  // smaže prvek Pokus

A pokud chcete zjisťovat hodnotu všech klíčů ve startupu, tak taky můžete :

RegistryKey klic=Registry.LocalMachine.OpenSubKey("Software\\Microsoft\\Windows\\CurrentVersion\\Run",true);
Console.WriteLine("Všechny startup prvky :");
string[] podPrvky=klic.GetValueNames();  // načtení prvků do pole
foreach(string prvek in podPrvky)  // průchod polem
{
   Console.Write("\tPrvek : "+prvek+"\n\t\t"+klic.GetValue(prvek)+"\n");  // výpis jednotlivých prvků
}

No a to je všechno, víc už ke práci se startupem v C# nepotřebujete. smajl44 Pro ilustraci, vše dohromady je v programu startup.exe, který spolu se zdrojovým kódem přikládám.

kategorie C#

Komentáře

17.2. 2008, 10:11:49 aldkuemdmo ( web, mail )

Hello! Good Site! Thanks you! <a href=http://odqkevpfiqhi.com >http://odqkevpfiqhi.com</a>


12.5. 2007, 11:00:33 mata

Aspoň je to pěkná ukázk jak na registry, protože pro .ne je těch Reistrových tutoriálůmálo. Aspoň co jsem googlil.


12.2. 2006, 16:54:45 Pavel

Nemyslel jsem, abych si takto přidával do startupu sám cizí programy, ale aby se mé programy uměly do startupu přidat bez uživatelova dalšího rýpání v PC ...


12.2. 2006, 13:45:04 zimmi ( web )

Heh, nenabízí náhodou každý solidní program možnost automatické spuštění? A myslím, že Windows Services tu taky nejsou pro srandu králíkům.


Přidej komentář
Jméno :
E-mail :
Web :
Výsledek 1+1 :
Text :
smajl1 smajl2smajl3 smajl4 smajl5 smajl6 smajl7 smajl8 smajl9 smajl10 smajl11 smajl12 smajl13 smajl14 smajl15 smajl16 smajl17 smajl18 smajl19 smajl20 další


© Pavel Doško, 2005 - 2006; www.dosko.net, napiš mi zprávu; přejdi nahoru, změň styl
XHTML 1.1, CSS 2, PHP, MySQL