如何把一个网页存为一个单独的mht文件

王朝html/css/js·作者佚名  2008-06-01
窄屏简体版  字體: |||超大  

#include "SHDocVw_OCX.h"

#include "cdoex.h"

#include "msado15.h"

using namespace CDO;

// 本文是ccrun(老妖)根据相关资料改的,在BCB 6.0 下成功编译并测试通过.

// 假如有不能正常运行的,可能需要在机器上安装有Outlook.

void __fastcall SaveWholePage(BSTR bstrUrl, BSTR bstrFileName)

{

CoInitialize(NULL);

IMessage *pMsg;

IConfiguration *pConfig;

HRESULT hr = CoCreateInstance(__uuidof(Message), NULL,

CLSCTX_INPROC_SERVER, __uuidof(IMessage), (void**)&pMsg);

hr = CoCreateInstance(

__uuidof(Configuration),

NULL,

CLSCTX_INPROC_SERVER,

__uuidof(IConfiguration),

(void**)&pConfig);

pMsg->put_Configuration(pConfig);

try<br>

{

pMsg->CreateMHtmlBody(

bstrUrl,

cdoSuppressNone,

WideString(""),

WideString(""));

}

catch(...)

{

ShowMessage("有错误发生!");

return;

}

ADOStream *pStream;

pMsg->GetStream(&pStream);

pStream->SaveToFile(bstrFileName, adSaveCreateOverWrite);

pMsg->Release();

pStream->Release();

CoUninitialize();

}

// 调用举例:

void __fastcall TForm1::Button1Click(TObject *Sender)

{

SaveWholePage(WideString("http://www.ccrun.com"),

WideString("C:\\123.mht"));

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航