日期:2014-05-18  浏览次数:20863 次

关于C#中加载.exe可执行文件的问题,求教~~~在线等
我想在WinForm中加载一个.exe的可执行文件,但是我想让他嵌入一个控件中显示,而不是新打开一个窗口来显示exe文件,请问应该怎么实现这个功能呢?

分数真的不多。。只为求教。。

------解决方案--------------------
打开那个exe后。获取那个进程的主窗口。然后用setparent这个api把你的控件作为那个窗口的你窗口。
这些都必须使用win api来做。这些个api 网上都有。
------解决方案--------------------
这个代码基本可用,如果没效果,一个可能的原因是有些exe取不到MainWindowHandle,我的解决办法是先运行这个exe,然后用autoit这个工具,找到它的窗口的class,然后用appWin = FindWindow("className", null);来取得句柄。手头有个Alexsys Team 2 Pro的软件,用MainWindowHandle没效果,用class可行。
------解决方案--------------------
进程打开之后先sleep几秒 等程序窗口显示出来了再setparent就可以了。


Process.Start之后先sleep