ShellExecuteEx可以使用 /savecred /user:administrator吗?解决方案
ShellExecuteEx可以使用 /savecred /user:administrator吗?
SHELLEXECUTEINFO execinfo;
memset(&execinfo, 0, sizeof(execinfo));
execinfo.lpFile = "c:\\yyy\\ddd.exe";
execinfo.cbSize = sizeof(execinfo);
execinfo.lpVerb = _T("runas");
execinfo.fMask = SEE_MASK_NOCLOSEPROCESS;
execinfo.nShow = SW_SHOWDEFAULT;
execinfo.lpParameters = " /savecred /user:administrator ";
ShellExecuteEx(&execinfo);
结果 总弹出让我选多个管理员, 我只需要用administrator用户启动, 而且要求只输入一次密码.
WHY?
------解决思路----------------------
感觉不是楼主说的那个原因。应该是你程序的权限就不是管理员权限。楼主可以用管理员权限打开你的程序,之后再通过什么方法来执行到你Shell的代码式式。
------解决思路----------------------
所以程式一般在管理員下運行為好
SHELLEXECUTEINFO execinfo;
memset(&execinfo, 0, sizeof(execinfo));
execinfo.lpFile = "c:\\yyy\\ddd.exe";
execinfo.cbSize = sizeof(execinfo);
execinfo.lpVerb = _T("runas");
execinfo.fMask = SEE_MASK_NOCLOSEPROCESS;
execinfo.nShow = SW_SHOWDEFAULT;
execinfo.lpParameters = " /savecred /user:administrator ";
ShellExecuteEx(&execinfo);
结果 总弹出让我选多个管理员, 我只需要用administrator用户启动, 而且要求只输入一次密码.
WHY?
------解决思路----------------------
感觉不是楼主说的那个原因。应该是你程序的权限就不是管理员权限。楼主可以用管理员权限打开你的程序,之后再通过什么方法来执行到你Shell的代码式式。
------解决思路----------------------
所以程式一般在管理員下運行為好