createprocess打开一个简单的*.exe文件是可以实现的。但是有些大型软件如CATIA等,你直接打开*.exe是不行的,它有很多环境参数,授权什么的,我也不是很清楚。但是你双击它的桌面快捷方式就没有问题,所以我想问一下,我的设想可以实现吗?如果不行,有其他的方式达到目的吗?毕竟手动操作只是双击快捷方式啊
2 回答
撒科打诨
TA贡献1934条经验 获得超2个赞
您好,恐怕难以做到。我只知道可以打开一个程序:
#include <windows.h>
#include <stdio.h>
#include <tchar.h>
int main()
{
TCHAR szExe[] = _T("D:\\QQ.exe");
TCHAR szCmd[16] = {0};
STARTUPINFO si;
PROCESS_INFORMATION pi;
si.cb = sizeof(STARTUPINFO);
GetStartupInfo(&si);
if(!CreateProcess(szExe, szCmd,
NULL, // process info
NULL, // thread info
TRUE, // inheritable
0, // creation flags
NULL, // environment
NULL, // current directory
&si, & pi))
{
printf(_T("open process: %s failed with error: %d\n"), szExe, GetLastError());
}
else
{
CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);
}
}
- 2 回答
- 0 关注
- 451 浏览
添加回答
举报
0/150
提交
取消