【发布时间】:2012-09-12 13:15:18
【问题描述】:
我使用ShellExecuteEx() 来调用一个可执行文件。以下是我为SHELLEXECUTEINFO结构设置的参数。
SHELLEXECUTEINFO ShExecInfo = {0};
ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);
ShExecInfo.fMask = SEE_MASK_NOCLOSEPROCESS|SEE_MASK_UNICODE;// Set Unicode Flag
ShExecInfo.hwnd = NULL;
ShExecInfo.lpVerb = NULL;
ShExecInfo.lpParameters = TEXT ("/s");
ShExecInfo.lpDirectory = NULL;
ShExecInfo.nShow = SW_SHOWNORMAL;
ShExecInfo.hInstApp = NULL;
ShExecInfo.lpFile = TEXT ( ".\\bin\\x86\\installerx86.exe" );
ShExecInfo.fMask 设置为 Unicode,但 ShExecInfo.lpFile 没有以 "\\?\" 开头。
在这种情况下,我的代码是否与 Unicode 兼容?
【问题讨论】:
-
SEE_MASK_UNICODE 是 Windows NT 遗留下来的东西。见blogs.msdn.com/b/oldnewthing/archive/2014/02/27/10503519.aspx