想去截获*.msi这类文件的安装,使用CreateProcess返回False,似乎返回Error是该程序不是有效的Win32程序请教如何解决,谢谢
是不是只能用ShellExecute来做?
用ShellExecute又该如何判断该进程已经结束了?
是不是只能用ShellExecute来做?
用ShellExecute又该如何判断该进程已经结束了?
解决方案 »
- 高分求助:如何给ToolBar引入超过256色的bmp资源,路过的大牛们点化点化啊
- 如何用vc2010编译dxlib库
- 网络摄像头传输JPG的问题
- WINCE 下创建网络链接---RasSetEntryProperties 如何设置参数 急!希望大侠们帮忙啊。。。
- 请问下如何实现函数解析的过程?? 谢谢了
- VC编程控制无线网卡的问题
- 谁有www.vckbase.com 或者 www.vccode.com 类视的网站代码啊???
- 请赐教!怎样排除VC++编译和运行时的错误.
- 为什么用数组写到EXCLE里,单元格的值都是TRUE
- 汉字编码的问题。
- 怎样得到主对话框的指针或句柄?
- 调试时 和 非调试状态 结果不一样 如何 解决????? 揭贴及时
ZeroMemory(&ShExecInfo, sizeof(SHELLEXECUTEINFO));
ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);
ShExecInfo.fMask = SEE_MASK_NOCLOSEPROCESS;
ShExecInfo.hwnd = NULL;
ShExecInfo.lpVerb = NULL;
ShExecInfo.lpFile = szFilePath;
ShExecInfo.lpParameters = szParam;
ShExecInfo.lpDirectory = NULL;
ShExecInfo.nShow = SW_HIDE;
ShExecInfo.hInstApp = NULL;
ShellExecuteEx(&ShExecInfo);
HWND hWnd = ::FindWindow("MsiDialogCloseClass",NULL);
WaitForSingleObject(ShExecInfo.hProcess, INFINITE);其中szFilePath为文件全路径,szParam为该文件所带的参数