2 lxz5200oo lxz5200oo 于 2015.07.26 18:28 提问

匿名管道子进程创建失败

我是跟着孙鑫VC教程学的,跟着他的步骤敲得代码,但是子进程总是创建失败,
if(!CreateProcess(("..\Child\Debug\Child1.exe"),NULL,NULL,NULL,
TRUE,0,NULL,NULL,&sui,&pi))
{
CloseHandle(hRead);
CloseHandle(hWrite);
hRead=NULL;
hWrite=NULL;
MessageBox("创建子进程失败!");
return;
}
else
{
CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);
}
}

void CParent1View::OnPipeRead()
{
// TODO: Add your command handler code here
char buf[100];
DWORD dwRead;
if(!ReadFile(hRead,buf,100,&dwRead,NULL))
{
MessageBox("读取数据失败!");
return;
}
MessageBox(buf);

3个回答

CSDNXIAON
CSDNXIAON   2015.07.26 18:38

Windows CreateProcess fail 创建进程失败。
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

oyljerry
oyljerry   Ds   Rxr 2015.07.26 18:49

用GetLastError查看一下子进程创建失败的错误码,这才好进一步分析

oyljerry
oyljerry 回复lxz5200oo: 在你失败的API时候调用,它返回一个DWORD值
2 年多之前 回复
lxz5200oo
lxz5200oo 我是刚开始学的,请问怎么用GetLastError
2 年多之前 回复
zuishikonghuan
zuishikonghuan   2015.07.27 09:02

换成绝对路径再试一下
用GetLastError获取错误码再分析

zuishikonghuan
zuishikonghuan 回复lxz5200oo: 那就看看错误码是多少
2 年多之前 回复
lxz5200oo
lxz5200oo 用绝对路径也试过,程序可以运行,但是点击创建菜单项后,还是提示创建子进程失败
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片