以编程方式生成.mht文件

cho*_*abs 8 c# mhtml

有人知道如何在C#中以编程方式生成.mht文件,其中包含嵌入的图像吗?事情是我已经意识到.mht文件能够在其中嵌入图像,并且当您更改其位置时,此嵌入图像随整个文件(mht)移动.此文件可以在不同的浏览器上查看,包括IE 6.

我被告知要尝试Data Url Scheme技术.但它无法正常工作,因为它不受其他浏览器的支持.例如IE 6.

Get*_*ree 6

在Windows环境中,您可以通过CDO.Message COM组件直接执行此操作,该组件公开IMessage接口
我不知道在C#中导入COM对象的详细信息,因此我将为您提供类似C语法的快速示例:

IMsgObj = CreateObject("CDO.Message")   // create the object
IMsgObj.CreateMHTMLBody("http://www.example.com/") // convert the URL to MHTML
IMsgObj.GetStream().SaveToFile("output.mht")  // save it to a file
Run Code Online (Sandbox Code Playgroud)

CDO.Message组件的CLSID是{CD000001-8B95-11D1-82DB-00C04FB1625D}

但请记住,此组件用于生成电子邮件(.eml文件扩展名而不是.mht),这意味着不包含JavaScript文件.否则他们大致相当.


Yah*_*hia 5

它是可能的,并且肯定是由其他人完成的 - 相关材料和库/源代码: