小弟想把WebBrowser中内容保存到一个mht文件中,网上的参考代码是:PHP 代码:
CDO.MessageClass msg=new CDO.MessageClass();
msg.CreateMHTMLBody(axWebBrowser1.LocationURL,CDO.CdoMHTMLFlags.cdoSuppressAll,"","");
ADODB.Stream s= msg.GetStream();
s.SaveToFile(@"d:\test.mht",ADODB.SaveOptionsEnum.adSaveCreateOverWrite); 小弟在C#工程中引入CDO及ADODB1命名空间,将上面代码转换为C#代码: CDO.MessageClass msg = new CDO.MessageClass();
ADODB.Stream stm = null;
try
{
msg.CreateMHTMLBody(WebBrowser.Url.ToString(), CDO.CdoMHTMLFlags.cdoSuppressAll, "", "");
stm = msg.GetStream();
stm.SaveToFile(FilePath, ADODB.SaveOptionsEnum.adSaveCreateOverWrite);
}
finally
{
stm.Close(); //未将对象引用设置到对象的实例
}
但每次都是提示:System.NullReferenceException: 未将对象引用设置到对象的实例。
一次次的失败让我失望至极,请教高手这是怎么回事啊?
CDO.MessageClass msg=new CDO.MessageClass();
msg.CreateMHTMLBody(axWebBrowser1.LocationURL,CDO.CdoMHTMLFlags.cdoSuppressAll,"","");
ADODB.Stream s= msg.GetStream();
s.SaveToFile(@"d:\test.mht",ADODB.SaveOptionsEnum.adSaveCreateOverWrite); 小弟在C#工程中引入CDO及ADODB1命名空间,将上面代码转换为C#代码: CDO.MessageClass msg = new CDO.MessageClass();
ADODB.Stream stm = null;
try
{
msg.CreateMHTMLBody(WebBrowser.Url.ToString(), CDO.CdoMHTMLFlags.cdoSuppressAll, "", "");
stm = msg.GetStream();
stm.SaveToFile(FilePath, ADODB.SaveOptionsEnum.adSaveCreateOverWrite);
}
finally
{
stm.Close(); //未将对象引用设置到对象的实例
}
但每次都是提示:System.NullReferenceException: 未将对象引用设置到对象的实例。
一次次的失败让我失望至极,请教高手这是怎么回事啊?
看是否已经创建成功????????????
{
CDO.Message msg = new CDO.MessageClass();
CDO.Configuration cfg = new CDO.ConfigurationClass(); msg.Configuration = cfg;
msg.CreateMHTMLBody(@"http://www.sina.com.cn", CDO.CdoMHTMLFlags.cdoSuppressAll, "", "");
msg.GetStream().SaveToFile("c:\\a.mht", ADODB.SaveOptionsEnum.adSaveCreateOverWrite);
}
类型“CDO.ConfigurationClass”未定义构造函数