问题描述
我有一个 .exe
,它自己“运行”正常,没有错误。我用 CreateProcess()
调用它,我调用 WaitForSingleObject()
以了解它何时完成,以及当 WaitForSingleObject()
被调用时,“子”进程会崩溃。
代码:
#include <iostream>
#include <windows.h>
using namespace std;
int main() {
STARTUPINFOA info;
PROCESS_informatION processInfo;
ZeroMemory(&info,sizeof(info));
info.cb = sizeof(info);
ZeroMemory(&processInfo,sizeof(processInfo));
char path[] = "C:/.../ExeName.exe";
if (CreateProcessA(path,NULL,FALSE,&info,&processInfo)) {
WaitForSingleObject(processInfo.hProcess,INFINITE);
CloseHandle(processInfo.hProcess);
CloseHandle(processInfo.hThread);
}
else {
cout << "Fail";
}
return 0;
}
被调用的 .exe
从文件中读取,进行一些(我会说是轻量级的)计算和堆分配,不打印任何内容,然后将结果写入另一个文件。如果它找不到它创建的文件,我尝试将它读取的文件复制到调用 .exe
的位置,但没有任何改变。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)