如何在不提示输入密码的情况下使用runas?

时间:2011-07-25 07:38:44

标签: visual-c++

如何在我的代码中使用runas,而不提示输入密码?

   SHELLEXECUTEINFO info = {0};
   info.cbSize = sizeof(SHELLEXECUTEINFO);
   info.fMask  = SEE_MASK_NOCLOSEPROCESS;
   info.lpFile = _T("IECapt.exe");    
   info.lpVerb = "runas";
   info.lpParameters = _T("test");

   info.nShow = SW_HIDE;

   if (ShellExecuteEx (&info))
    {
       WaitForSingleObject (info.hProcess, INFINITE);
    }

1 个答案:

答案 0 :(得分:0)

如果您了解user和passwort,则可以使用CreateProcessAsUser。但要注意CreateProcess和ShellExecute做不同的事情。

您也可以尝试使用LogonUser [Ex] + ImpersonateLoggedOnUser + ShellExecuteEx + RevertToSelf,但我不确定这是否有效。