Avatar
joci
Člen
Avatar
joci:

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
Avatar
joci
Člen
Avatar
Odpovídá na Člen
joci:

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:

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
Redaktor
Avatar
Odpovídá na joci
coells:

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:

Ď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.