项目中引入cdosys.dll组件,位置:  C:\Windows\System32\cdosys.dll

CDO、ADODB 这些类都来自于cdosys.dll组件

/// <summary>
/// 把Html格式二进制流转换成Mht格式的二进制流
/// </summary>
/// <param name="htmlUrl">Html格式的二进制流</param>
/// <returns>Mht格式的二进制流</returns>
public static byte[] ConvertHtmlUrlToMht(string htmlUrl)
{
string _CharSet = "gb2312";
string strMhtContent = string.Empty;
byte[] BytMhtContent = null;
CDO.Message message = new CDO.MessageClass();
ADODB.Stream stream = null;
message.MimeFormatted = true;
message.CreateMHTMLBody(htmlUrl, CDO.CdoMHTMLFlags.cdoSuppressNone, "", "");
stream = message.GetStream();
stream.Charset = _CharSet;
strMhtContent = stream.ReadText(stream.Size);
BytMhtContent = Encoding.GetEncoding(_CharSet).GetBytes(strMhtContent);
return BytMhtContent;
}
/// <summary>
/// 把Html格式二进制流转换成Mht格式的二进制流,成功返回true,失败返回false
/// </summary>
/// <param name="htmlUrl">Html格式的二进制流</param>
/// <param name="filePath">Mht文件的保存路径</param>
/// <returns>操作结果 成功:true,失败;false</returns>
public static bool ConvertHtmlUrlToMht(string htmlUrl, string filePath)
{
bool isConvertHtmlBytesToMht = false;
CDO.Message message = new CDO.MessageClass();
ADODB.Stream stream = null;
message.MimeFormatted = true;
message.CreateMHTMLBody(htmlUrl, CDO.CdoMHTMLFlags.cdoSuppressNone, "", "");
stream = message.GetStream();
stream.SaveToFile(filePath, ADODB.SaveOptionsEnum.adSaveCreateOverWrite);
message = null;
stream.Close();
isConvertHtmlBytesToMht = true;
return isConvertHtmlBytesToMht;
}

最新文章

  1. Xamarin.Forms listview中的button按钮,实现带着参数返回上一级页面
  2. C#并行编程中的Parallel.Invoke
  3. DP:Making the Grade(POJ 3666)
  4. 使用ASP.Net WebAPI构建REST服务(四)——参数绑定
  5. Flex应用一览表
  6. PMP考试的过与只是
  7. Ext JS学习第六天 Ext_window组件(三)
  8. google chrome字体最小12px的问题
  9. CVTE后台开发实习生岗位面试经验(2017.3)
  10. Maven简介(一)
  11. LTP语法分析
  12. windows下C++连接mysql
  13. layui xtree 实现一级节点单选 ,子节点复选
  14. Linux系统基础5周入门精讲(服务器介绍)
  15. Redis-安装时问题整理
  16. 关于Unity中坐标系的种类
  17. POJ 2752 KMP中next数组的理解
  18. 安装Nginx并为node.js设置反向代理
  19. 转载:【原译】Erlang性能的八个误区(Efficiency Guide)
  20. jquery 属性操作 attr( ) prop()css( )区别

热门文章

  1. 转:iOS 屏幕适配,autoResizing autoLayout和sizeClass图文详解
  2. JS---控制键盘事件
  3. Grunt使用教程(限winows)
  4. echarts 折柱混合图 (绑数据后)
  5. Scala学习---数组
  6. dropdown-toggle 的点击禁用
  7. pull类型消息中间件-消息发布者(一)
  8. weex 语法高亮
  9. BOS物流管理系统-第五天
  10. WCF初接触实作