如何在生成一个进程后,获取该进程的返回值

lvzhen1109 2005-09-29 11:11:44
如何在生成一个进程后,获取该进程的返回值

比如我在vc中使用CreateProcess函数启动一个进程test.exe(命令行进程)
用什么方法可以得到test.exe的返回值

比较着急
谢谢先
...全文
347 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
oyljerry 2005-09-29
  • 打赏
  • 举报
回复
返回值可以用进程通信等来传递
oyljerry 2005-09-29
  • 打赏
  • 举报
回复
WaitForSingleObject
布学无数 2005-09-29
  • 打赏
  • 举报
回复
监视另一个进程的运行?
要么做虚拟机,要么就两个进程之间有一定的规范;否则很难搞定:)
lvzhen1109 2005-09-29
  • 打赏
  • 举报
回复
我尝试过用SetLastError(),但是不行
因为test.exe的错误模式是继承调用者的错误模式的,

所以在create进程后,无法得到test.exe的所有错误信息

ximenying 2005-09-29
  • 打赏
  • 举报
回复
楼上的完全正确,我也要分哈
Igj1012 2005-09-29
  • 打赏
  • 举报
回复
CreateProcess("xxxxxx", NULL, NULL, NULL, FALSE, 0, NULL, "xxxxxxxxx", &si, &pi))

WaitForSingleObject(pi.hProcess, INFINITE);

GetExitCodeProcess(pi.hProcess, &dwExitCode);
lvzhen1109 2005-09-29
  • 打赏
  • 举报
回复
如果用进程间通信,应该没有问题,但是那样做太麻烦了,因为我只需要返回值的内容
我现在用了一个简单的方法,就是在test.exe中生成一个日志文件,然后让调用者自己去读取日志文件的内容,这样相对比较简单点

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧