VS2015 MFC DLL对话框内调用ActiveX控件

版权声明:本文为博主原创文章,转载请声明出处! https://blog.csdn.net/qq_37781464/article/details/85122145

在我的其它博客中,介绍了mfc dll如何调用模式对话框与非模式对话框的实现过程。接下来介绍在mfc dll中如果包含有ActiveX控件该如何调用了。
我们还是在mfc dll的对话框里添加一个ActiveX控件,例如添加一个webbrowser控件,设置控件默认加载的网页。
在这里插入图片描述
在这里插入图片描述
然后我们生成这个mfc dll动态库,然后调用。
在调用的时候发现无法弹出mfc dll里的这个对话框。
在这里插入图片描述
这是因为mfc dll与mfc acitvex在创建对话框时,如果对话框里包含ActiveX控件,需要设置几行代码。回到mfc dll的工程里,在MFC_dll.cpp的初始化函数InitInstance()中添加如下代码:
在这里插入图片描述

	//下面这些代码为添加对mfc dll中子对话框里ActiveX控件的支持
	AfxEnableControlContainer();
	if (!AfxOleInit())
	{
		return FALSE;
	}
	//初始化控件环境
	AfxEnableControlContainer();
	CoInitialize(NULL);

然后重新生成mfc dll动态库,接着在调用工程里进行调用。这次就可以成功显示mfc dll动态库对话框里webbrowser控件里的网页了。
在这里插入图片描述

展开阅读全文

没有更多推荐了,返回首页