我想实现的是,我的应用程序ex1.exe调用另一个应用程序ex2.exe,并能够把ex2.exe显示在我的子窗口中(SID 的view中),这两个应用程序需要满足什么条件?需要用到什么技术,能不能说的详细一点。
解决方案 »
- mfc菜鸟求救
- 兔子党是什么东东???
- 可否从两个MFC控件类继承? 发现这样做有一堆错误
- 请问我想用C/C++对硬件(微机接口)编程,需要用哪些参考资料
- unicode下debug和release下对字符的处理的区别?
- 请问VC++和MFC有什么不同,如果做SOCKET开发用哪一个,如果是做图像图形用哪一个
- 谁能介绍一些关于com/com+与asp交互的资料
- ntp(网络时间协议)!
- 求救!!!!!!!!!!请问在用getfile()时的问题!!!!!!!
- 需要将MDI子窗口始终保持最大,请问高手应该怎样做?
- directshow 开发环境
- 求救:关于用vc++6.0调用windows API函数编译成功,但是Build出现错误,请大家都来帮忙
可以
方法:ex1加载ex2,然后检索ex2的窗口句柄。再设置ex2窗口的父窗口,即ex1的窗口。
CPUIV(),能不能说的详细一点。我使用的工具是vc、mfc。什么叫“不被父窗口的特性”?
m_pMainWnd->ShowWindow(SW_SHOW);
m_pMainWnd->UpdateWindow();在其后键入下面的代码: SetWindowLong(m_pMainWnd->m_hWnd, GWL_STYLE, GetWindowLong(m_pMainWnd->m_hWnd,GWL_STYLE)|WS_CLIPCHILDREN);
HINSTANCE hp=ShellExecute(NULL,NULL,"notepad",NULL,"",SW_SHOWNORMAL);
CWnd *pWnd=NULL;
while(1) //一直到写字板窗体被建立
{
pWnd=CWnd::FindWindow("Notepad",NULL);
if (pWnd) break;
}
pWnd->SetParent(m_pMainWnd);编译即可运行
代码如下:
SetWindowLong(m_pViewContainer->m_hWnd, GWL_STYLE, GetWindowLong(m_pViewContainer->m_hWnd, GWL_STYLE)|WS_CLIPCHILDREN);
HINSTANCE hp = ShellExecute(NULL, "open",
"E:\Client.exe", NULL, "", SW_MAXIMIZE);
CWnd *pWnd = NULL; while(1) //一直到写字板窗体被建立
{
pWnd=CWnd::FindWindow("Notepad",NULL);
if (pWnd) break;
}
pWnd->SetParent(m_pViewContainer);
2 ex2 与 ex1 的同步问题。SetParent()函数必须在ex2 的窗口建立以后执行(建议采用ex1延迟1
秒后再执行SetParent)。
3 ex1 的窗口必须是非模式窗体。