IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Spustenie programu pri štarte vs. spustenie užívateľom

V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
joci
Člen
Avatar
joci:29.4.2015 10:03

Zdravím, potreboval by som zistiť, že keď sa zapne program, či je zapnutý užívateľom alebo je zapnutý automaticky po zapnutí počítača. Ako to urobiť ?

Odpovědět
29.4.2015 10:03
Svet patrí tím, ktorí sa neposerú.
Avatar
Člen
Člen
Avatar
Odpovídá na joci
Člen:29.4.2015 10:26

Mutex?

Nahoru Odpovědět
29.4.2015 10:26
...
Avatar
joci
Člen
Avatar
Odpovídá na Člen
joci:29.4.2015 10:46

Nejak som to nepochopil :D nepotrebujem len jednu inštanciu programu ale potrebujem zistiť ako bol program spusteny.

Nahoru Odpovědět
29.4.2015 10:46
Svet patrí tím, ktorí sa neposerú.
Avatar
Odpovídá na joci
Michal Štěpánek:29.4.2015 11:02

Podle mě, ať je program spuštěný uživatelem, nebo automaticky po startu PC, bude stejně v počítači vidět jako spuštěný uživatelem, protože by musel mít nastaveno, aby se nějaká instance spouštěla pod systémovým účtem, aby byl vidět jinak.

Editováno 29.4.2015 11:02
Nahoru Odpovědět
29.4.2015 11:02
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
coells
Tvůrce
Avatar
Odpovídá na joci
coells:29.4.2015 11:05

To ani on ne :-D Asi se chtěl pochlubit, že umí nové cizí slovíčko.

Jestliže je program spuštěný pod účtem uživatele, je to stejné, jako by ho spustil uživatel a nezáleží na způsobu (z uživatelského hlediska), jakým došlo ke spuštění. Výjimku tvoří Windows Service, která nemá interaktivní desktop (ačkoliv desktop mít musí).

Takže jediný způsob, co ti zbývá, je použít explicitní command line parametr nebo launcher, který ten aplikaci s takovým parametrem spustí.

 
Nahoru Odpovědět
29.4.2015 11:05
Avatar
joci
Člen
Avatar
joci:4.5.2015 13:55

Ďakujem za vaše rady, už som to vyriešil.

Pridal som ku ceste k súboru v registroch CMD parameter.

path = Application.ExecutablePath.Replace("/", "\\"); //path to application
dpath += " s"; //file path + command line parameter "s"

StartOnBoot.SetValue("StartProgram", path); //set to registry

Teraz, keď sa zapne program iba kontrolujem či sa spustil s nejakým CMD parametrom, ak áno, nastaví sa premenná na true, čo indikuje, že program je zapnutý automaticky pri štarte.

if ( args.Length>0 &&args[0].Equals("s"))
   {
      LaunchedOnStartup = true;
    }else
     {
      LaunchedOnStartup = false;
     }
Akceptované řešení
+5 Zkušeností
Řešení problému
Nahoru Odpovědět
4.5.2015 13:55
Svet patrí tím, ktorí sa neposerú.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.