我对使用命令行参数调用CreateProcessAsUser的正确方法有些困惑。因此,无需详细说明填写其余参数的详细信息,有人可以确认这是应该如何完成的吗?(换句话说,我应该将exe文件路径作为第一个命令行参数,还是指定它就lpApplicationName
足够了?)
LPCTSTR pExePath = L"c:\\program files\\sub dir\\program.exe";
LPCTSTR pCmdLine = L"v=\"one two\"";
TCHAR buff[MAX_PATH];
StringCchCopy(buff, MAX_PATH, _T("\""));
StringCbCat(buff, MAX_PATH, pExePath);
StringCbCat(buff, MAX_PATH, _T("\" "));
StringCbCat(buff, MAX_PATH, pCmdLine);
CreateProcessAsUser(hToken, pExePath, buff, NULL, NULL, FALSE, dwFlags, NULL, NULL, &si, &pi);