使CHtmlView启用activex控件下载

时间:2013-08-06 18:00:08

标签: mfc activex ihtmldocument2

我是Visual C ++编程的CHtmlView的新手。我需要通过IHTMLDocument2界面创建一个Web浏览器应用程序显示网站,该网站需要从网站下载activex控件并自动运行。这是问题,我所做的应用程序运行良好,除了网站上的activex控件没有运行。我已经检查了IHTMLDocument2的接口,并且当dispid值等于DISPID_AMBIENT_DLCONTROL时,还覆盖OnAmbientProperty以将标志设置为零,但它仍然没有在使用我自己的Web浏览器应用程序浏览的网站上加载activex控件。

有谁能告诉我应该找哪个文件?我对如何在我自己的Web浏览器应用程序上设置安全级别以启用activex感到困惑。

非常感谢!

1 个答案:

答案 0 :(得分:0)

使它与MFC一起工作可能有点单调乏味。您需要为COleControlSite创建COccManagerCHtmlView的自定义实施。在COleControlSite对象上,您需要实施IServiceProviderIInternetSecurityManager。使用IInternetSecurityManager::ProcessUrlAction,您可以控制ActiveX控件的处理方式。 在这里你可以找到上面的一些实现:

http://www.codeproject.com/Articles/4805/Advanced-customization-of-WebBrowser-Control-in-Di

http://www.codeproject.com/Articles/924/DHTML-User-Interface-Library

http://shareaza-code.googlecode.com/svn/trunk/CtrlWeb.cpp