Java týden Java týden
Aprílový black friday tě nenechá v klidu! Až 80 % prémiového obsahu zdarma. Více informací
Pouze tento týden slevy až 80 % na programování v Javě

Diskuze: Spuštění CMD jako správce z Formuláře C#

C# .NET .NET (C# a Visual Basic) Spuštění CMD jako správce z Formuláře C# American English version English version

Aktivity (3)
Avatar
Jan Rathouský:7. března 12:42

Zdravím.
Vytvářím si do práce prográmek který mi nastaví celé windows prostředí tak jak jej potřebuji. Zatím toto nastavování dělám celé ručně a rozhodl jsem se, že se jej pokusím automatizovat.

Problém však mam s tím, že některé věci musím dělat v CMD a ne v PowerShell a CMD musí běžet jako správce. Potřebuji totiž vypnout komunikační protokol SMB2 Klient. Když jsem Googlil jak to udělat vždy jsem se dostal k tomu samému defakto a to:
ProcessStartInfo info = new ProcessStartInfo();
info.Verb = "runas";

takže ve výsledku by to mělo vypadat asi takto:
Process p = new Process();
ProcessStartInfo info = new ProcessStartInfo();
info.FileName = "cmd.exe";
info.RedirectStan­dardInput = true;
info.UseShellE­xecute = false;
info.Verb = "runas";
p.StartInfo = info;
p.Start();

a pak přes StreamWriter tam dát právě příkazy pro vypnutí protokolu SMB2.

Bohužel mi to nefunguje. Nevím jestli to je W10 ale netuším. Jsem už trochu zoufalí tak prosím o pomoc.

Zkusil jsem: Process p = new Process();
ProcessStartInfo info = new ProcessStartInfo();
info.FileName = "cmd.exe";
info.RedirectStan­dardInput = true;
info.UseShellE­xecute = false;
info.Verb = "runas";
p.StartInfo = info;
p.Start();

Process p = new Process();
ProcessStartInfo info = new ProcessStartInfo();
info.FileName = "cmd.exe";
info.RedirectStan­dardInput = true;
info.UseShellE­xecute = false;
info.Verb = "runas";
info.Arguments = "/user:Adminis­trator \"cmd /K " + "sc config lanmanworkstation depend = bowser / mrxsmb10 / nsi" + "\"";
info.Arguments = "/user:Adminis­trator \"cmd /K " + "sc config mrxsmb20 start= disabled" + "\"";
p.StartInfo = info;
p.Start();
//StreamWriter sw = p.StandardInput;
//sw.WriteLine("sc config lanmanworkstation depend= bowser/mrxsmb10­/nsi");
//sw.WriteLine("sc config mrxsmb20 start= disabled");
//p.Close();

Chci docílit: Snažím se dosáhnout toho aby při stisknutí tlačítka se spustil Příkazový řádek s tím že se spustí jako správce a automaticky se tam zadají příkazy:

sc config lanmanworkstation depend = bowser / mrxsmb10 / nsi
sc config mrxsmb20 start= disabled

 
Odpovědět 7. března 12:42
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 2 zpráv z 2.