windows - 用于在 Windows 中显示内存中 MHTML 的 ActiveX 组件

标签 windows winapi activex mhtml

我正在创建一个小型 Windows 应用程序 (C++),它会创建一些这样的窗口(CreateWindowEx 等)。在一个窗口中,我想添加一个控件来显示 MHTML从内存加载,即整个 MHTML 内容在字符串中,而不是在文件中。

我已经尝试过 Shell.Explorer 组件,但我找不到向它注入(inject)除 HTML 之外的任何内容的方法(请参阅 AtlAxCreateControl)。

是否可以使用 Shell.Explorer 组件或任何其他组件来显示内存中的 MHTML?
即不将内容写入文件,然后给出文件路径。这行得通,但它不是最佳选择,如果我不能以任何其他方式做到这一点,它必须是最后的选择。

PS:如果这可以在其他语言或环境(如 C#、JS、VBS、WSH、HTA)中完成,我也洗耳恭听。

最佳答案

回答有点晚,但仍然有办法:使用 Microsoft 的 WebBrowser 控件(COM 组件,也可以在 .Net 应用程序中使用)。

看看这里提出的解决方案 - How to load mht from stream/string into a WebBrowser control?这里 - How to display the string html contents into webbrowser control? .其中一些涉及 mhtml 内容,但解决方案也适用于普通 html 文件。

祝你好运。

关于windows - 用于在 Windows 中显示内存中 MHTML 的 ActiveX 组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10956405/

相关文章:

windows - Diskpart脚本删除所有分区

windows - 在打印机上启用共享并设置共享名

C++ 坐标错误

c++ - RegSetValueEx 函数写乱码

winapi - 屏幕区域与工作区域矩形

c - 自动检测 C 中的操作系统并处理其特定的换行符

javascript - 我可以从 Web 应用程序打开 Windows 资源管理器窗口吗?

multithreading - 在这种情况下什么时候需要调用 CoInitialize() ?

.net - .NET Applet 和嵌入在 IE 中的 ActiveX 控件有什么区别

c# - ActiveX VLC 播放器事件不工作