如何调用createprocess 运行一个exe界面嵌入到当前的MFC界面

june2008 2010-01-21 09:59:28
现在假设我用VC做了一个简单的MFC程序,现在要调用一个EXE程序,随便什么EXE文件,但是要把它的运行界面嵌入到当前的MFC界面中,据说就一个API就行,我试了两天,把CreateProcess的参数试了好多,就是不行,总是这个EXE文件单独运行了。请帮帮忙,万分感谢
...全文
543 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
gengyanbo 2011-12-24
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 davidhsing 的回复:]
Hosting .exe applications into a dialog
An article on launching and embeding .exe applications into a dialog-based application

http://www.codeproject.com/KB/dialog/exeHosting.aspx
[/Quote]

能详细说么
cheery_an 2010-05-07
  • 打赏
  • 举报
回复
我想看看啊
DavidHsing 2010-01-22
  • 打赏
  • 举报
回复
Hosting .exe applications into a dialog
An article on launching and embeding .exe applications into a dialog-based application

http://www.codeproject.com/KB/dialog/exeHosting.aspx
MoXiaoRab 2010-01-22
  • 打赏
  • 举报
回复
SetParent
注意下消息循环的处理就好
june2008 2010-01-22
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 sjdev 的回复:]
引用 11 楼 june2008 的回复:
这个问题我搞定了
怎么嵌入的?
[/Quote]


看10#的链接
june2008 2010-01-22
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 tr0j4n 的回复:]
SetParent
注意下消息循环的处理就好
[/Quote]


Thank you very much!!!

可以结贴了
sjdev 2010-01-22
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 june2008 的回复:]
这个问题我搞定了[/Quote]
怎么嵌入的?
zhou1xp 2010-01-22
  • 打赏
  • 举报
回复
mark
june2008 2010-01-22
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 wltg2001 的回复:]
我用createprocess 运行我一个用Win32写的基于对话框的EXE,别调用的EXE用了lpCmdLine处理传进来的参数,先DOS运行的那种,死都不显示界面,晕死。用shellexec()可以显示
==========
CreateProcess肯定是可以的,ShellExec在内部也是要调用CreateProcess的,不过CreateProcess参数设置太麻烦,所以方便起见用ShellExec还好一点
[/Quote]

这个问题我搞定了,是我被调用的EXE需要加载一些DLL,在执行目录下没有DLL,所以CReateProcess不显示对话框出来,看MSDN好像说CREATEPROCESS不去查找系统目录动态加载DLL,却加载失败也不正常执行弹出一个对话框提示。
wltg2001 2010-01-21
  • 打赏
  • 举报
回复
我用createprocess 运行我一个用Win32写的基于对话框的EXE,别调用的EXE用了lpCmdLine处理传进来的参数,先DOS运行的那种,死都不显示界面,晕死。用shellexec()可以显示
==========
CreateProcess肯定是可以的,ShellExec在内部也是要调用CreateProcess的,不过CreateProcess参数设置太麻烦,所以方便起见用ShellExec还好一点
wltg2001 2010-01-21
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 june2008 的回复:]
引用 4 楼 wltg2001 的回复:
没听过这么一个API,不过CreateProcess你倒是不用再试了,肯定是不行。


不知道用父子窗口句柄是否可行。
[/Quote]
设置父窗口的API当然有,不过并不是设成了子窗口,子窗口就会嵌到父窗口中去啊
june2008 2010-01-21
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 june2008 的回复:]
引用 4 楼 wltg2001 的回复:
没听过这么一个API,不过CreateProcess你倒是不用再试了,肯定是不行。


不知道用父子窗口句柄是否可行。
[/Quote]

我用createprocess 运行我一个用Win32写的基于对话框的EXE,别调用的EXE用了lpCmdLine处理传进来的参数,先DOS运行的那种,死都不显示界面,晕死。用shellexec()可以显示
june2008 2010-01-21
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 wltg2001 的回复:]
没听过这么一个API,不过CreateProcess你倒是不用再试了,肯定是不行。
[/Quote]

不知道用父子窗口句柄是否可行。
wltg2001 2010-01-21
  • 打赏
  • 举报
回复
没听过这么一个API,不过CreateProcess你倒是不用再试了,肯定是不行。
june2008 2010-01-21
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 sjdev 的回复:]
有的exe是没有界面的,怎么加入?
程序怎么判断exe有没界面?

我觉得你说的,把exe加入到当前界面中,是不是类似插件的机制?
[/Quote]

没有界面后台运行就Ok了,其实不是插件功能,就是有现成的程序,不想重新写,在新的项目里调用,希望调用的时候用户觉的是一体的。
sjdev 2010-01-21
  • 打赏
  • 举报
回复
有的exe是没有界面的,怎么加入?
程序怎么判断exe有没界面?

我觉得你说的,把exe加入到当前界面中,是不是类似
zoulie 2010-01-21
  • 打赏
  • 举报
回复
up,没见过,坐等高手解释

15,979

社区成员

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

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