Как я могу запустить IE с разными пользователями и указать URL? - PullRequest
0 голосов
/ 21 декабря 2010

Я пытаюсь создать консольное приложение для замены командного файла.Пакетный файл запросил пользователя и запустил следующий код ...

RUNAS / user: USA \% usr% "C: \ Program Files \ Internet Explorer \ iexplore.exe% ServerPath% /% AppName%"

Как я могу перевести это на код C #?Я в основном использую код ниже.Я объявляю имя пользователя и путь, но он всегда запускает IE с моим входом в Windows.Я неправильно использую глагол?Нужно ли включать пароль, и если да, то как?

string sPath = ServerPath
ProcessStartInfo startInfo = new ProcessStartInfo(@"C:\Program Files\Internet Explorer\iexplore.exe");
startInfo.Verb = @"runas /user:USA\" + sUser;
startInfo.Arguments = sPath;
startInfo.UseShellExecute = false;
Process.Start(startInfo);

1 Ответ

2 голосов
/ 21 декабря 2010
function SecureString MakeSecureString(string text)
{
  SecureString secure = new SecureString();
  foreach (char c in text)
  {
    secure.AppendChar(c);
  }

  return secure;
}

function void RunAs(string path, string username, string password)
{
  ProcessStartInfo myProcess = new ProcessStartInfo(path);
  myProcess.UserName = username;
  myProcess.Password = MakeSecureString(password);
  myProcess.UseShellExecute = false;
  Process.Start(myProcess);
}

RunAs(APPLICATION, USERNAME, PASSWORD);

Переходит к блогу Фрейзера Чепмена

...