2009-01-13 98 views
3

我在我的应用程序中使用IWebBrowser2控件,我有各种各样的html文件作为资源存储在exe中。要加载这些,我使用“res://”协议。问题在于,对于某些版本的IE,页面不再加载,而是显示“操作已取消,Internet Explorer无法链接到所请求的页面”。IE浏览器控制资源://使用

该页面在.RC脚本中引用就像这样:

为stats.html HTML DISCARDABLE “RES \ stats.html时”

的资源请求看起来像 RES:// C:\路径\ To \ MyApp.exe/stats.html

这用于工作得很好,在某些时候这种行为发生了变化,大概是使用hotfix或类似的东西。现在,在我的机器上,它不起作用。我曾试图改变资源的路径是这样的:

RES://MyApp.exe/stats.html

,没有工作。

然后我试图改变rc脚本:

统计HTML DISCARDABLE “RES \ stats.html时”

和RES路径:

RES://MyApp.exe/stats

现在,它的工作原理!然而,这真的很烦人,必须使用这种方式(从资源名称中删除“。”和文件扩展名)。有谁知道这是否是一个错误?一个特征?为什么会发生这种情况,还有其他解决方法吗?

编辑: 周围一些我发现打在这之后的工作: stats.htm HTML DISCARDABLE “RES \ stats.html时” RES://MyApp.exe/stats.htm

改变“ .html“资源名称中的扩展名为”.htm“,但我不知道为什么!

回答

2

确保内容类型设置正确。确保HKEY_CLASSES_ROOT.html将其内容类型设置为“text/html”,否则会发生奇怪的事情。同样为.htm也是如此。

+0

应该设置哪种内容类型? – 2013-02-07 12:43:17