hasło administratora w aplikacji

0

Witam,

Piszę aplikację wykorzystującą wiersz poleceń cmd.exe. Problem w tym, że niektóre komendy cmd potrzebują mieć uruchomiony cmd jako administrator. Czy jest możliwość wykorzystania stringa z hasłem administratora i uruchomienia cmd w trybie administratora? Niestety, gdy podaję po kolei parametry:

proc.Arguments = "/c runas /user:Administrator cmd&Password"

dostaję info o próbie uruchomienia jako administrator i nadal czeka na hasło. Dopiero po podaniu hasła cmd pobiera kolejny argument "Password i nie rozpoznaje polecenia "Password" (logiczne)

Czy można jakoś przesłać do konsoli hasło w momencie oczekiwania na usera?

Mam nadzieję, że jasno opisałem problem.

0

wg mojej wiedzy nie

0

OK,

Obszedłem to trochę inaczej. Mam teraz coś takiego:

private void button1_Click(object sender, EventArgs e)
        {
            var s = new SecureString();
            s.AppendChar('b');
            s.AppendChar('a');
            s.AppendChar('c');
            s.AppendChar('k');
            s.AppendChar('u');
            s.AppendChar('p');

            string Command = "/k dir";
            Process CMD = new Process();
            ProcessStartInfo PSI = new ProcessStartInfo();
            PSI.FileName = @"C:\windows\system32\cmd.exe";
            PSI.Arguments = Command;
            PSI.UserName = "backup";
            PSI.Password = s;
            PSI.UseShellExecute = false;  
            Process.Start(PSI);
        }

Koduję hasło do SecureString i potem podaję je jako parametr do uruchomienia procesu. Niestety dostaję błąd:

An unhandled exception of type 'System.ComponentModel.Win32Exception' occurred in System.dll

Additional information: Nazwa katalogu jest nieprawidłowa.

Co robię źle? Podany użytkownik istnieje w systemie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1