CreateProcessWithLogonW -> RunAs或Secondary Logon时,用户名被修改的问题
用CreateProcessWithLogonW()实现普通用户环境下用Administrator启动程序。
当计算机在workgroup中时没问题。
但当计算机在域时出现如下问题。
CreateProcessWithLogonW(
L"Administrator",
NULL,
L"password",
LOGON_WITH_PROFILE,
L"C:\\Program Files\\Internet Explorer\\IEXPLORE.EXE",
L"iexplore.exe",
CREATE_DEFAULT_ERROR_MODE,
NULL,
L"",
&si,
&pi);
用具有本地Users组权限的Domain用户登陆计算机,通过上述方法用本地Administrator用户执行程序,
结果失败,查看系统登陆Event日志,发现Administrator用户被改成了"localhost\Administrator",
而导致seclogon进程失败。
但是"localhost\"是什么时候被哪个程序加上的,我花了几天也没查出来。
高手救我。