c语言程序 管理员,ShellExecuteEX(获取管理员权限) | C/C++程序员之家

ShellExecuteEx取得管理员权限,ShellExecuteEx取得管理员权限

[cpp]

void GainAdminPrivileges(UINT idd, BOOL bWait){

CString strCmd;

CString strApp;

strCmd.Format (_T("/adminoption %d"), idd);

CSVPToolBox svpTool;

strApp = svpTool.GetPlayerPath();

SHELLEXECUTEINFO execinfo;

memset(&execinfo, 0, sizeof(execinfo));

execinfo.lpFile = strApp;

execinfo.cbSize = sizeof(execinfo);

execinfo.lpVerb = _T("runas");

execinfo.fMask = SEE_MASK_NOCLOSEPROCESS;

execinfo.nShow = SW_SHOWDEFAULT;

execinfo.lpParameters = strCmd;

ShellExecuteEx(&execinfo);

if(bWait)

WaitForSingleObject(execinfo.hProcess, INFINITE);

}

[/cpp]