MFC中如何将两个独立的程序合并为一个程序(障眼法)
Posted 好儿郎-志在四方
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MFC中如何将两个独立的程序合并为一个程序(障眼法)相关的知识,希望对你有一定的参考价值。
今天一个同学叫我帮忙解决一个关于MFC的问题,问题为:“将两个独立的MFC程序合并为一个程序 ”。
当然了,我用的是障眼法。
(1)下面先来看看具体情况:程序A和程序B分别是两个独立的工程文件。
(2)首先我在程序B的工程文件里面,添加一个对话框,设计一个主界面:
(3)然后对两个按钮添加相应事件:
“纹理特征提取”按钮:
void CMAINDIALOG::OnButton2()
// TODO: Add your control notification handler code here
ShellExecute(NULL,"open","Texture.exe",NULL,NULL,SW_SHOWNORMAL);
void CMAINDIALOG::OnButton1()
// TODO: Add your control notification handler code here
CXbwDlg dlg;
dlg.DoModal();
(4)再去修改工程B里面的InitInstance()函数,实例化我们自己定义的主窗口对象:(让程序一运行,便弹出我们自己定义的窗口)
CMAINDIALOG main_dlg;
main_dlg.DoModal();
(5)在将另外一个程序生成release版本:
此时,运行程序,便将两个独立的程序合二为一了。但是这其实只是个障眼法,同样有两个可执行文件,只是在其中一个程序里添加了另外一个程序打开的快捷方式而已。
(6)效果如下:
拓展:
ShellExecute的功能是运行一个外部程序(或者是打开一个已注册的文件、打开一个目录、打印一个文件等等),并对外部程序有一定的控制。
函数原型:
关于此函数的具体使用方法,大家可以参考微软的msdn。
注:原例子下载地址
点击下载: http://download.csdn.net/detail/rl529014/9525960
以上是关于MFC中如何将两个独立的程序合并为一个程序(障眼法)的主要内容,如果未能解决你的问题,请参考以下文章