zoukankan      html  css  js  c++  java
  • delphi 保存网页MHT

    delphi 保存网页MHT

     
    uses ADODB_TLB, CDO_TLB, ComObj,MSHTML;
    {$R *.dfm}
    {能把网页如 WWW.QQ.COM保存为一个单文件 .MHT
    但不能把一个 A.HTM 保存为一个单文件 .MHT

    procedure WB_SaveAs_MHT(WB: TWebBrowser; FileName: TFileName);
    var
      Msg: IMessage;
      Conf: IConfiguration;
      Stream: _Stream;
      URL: Widestring;
    begin
     
      if not Assigned(WB.Document) then
        Exit;
      URL := WB.LocationURL;
     
      Msg := CoMessage.Create;
      Conf := CoConfiguration.Create;
      try
        Msg.Configuration := Conf;
        Msg.CreateMHTMLBody(URL, cdoSuppressNone, '', '');
        Stream := Msg.GetStream;
        Stream.SaveToFile(FileName, adSaveCreateOverWrite);
      finally
        Msg := nil;
        Conf := nil;
        Stream := nil;
      end;
    end; (* WB_SaveAs_MHT *)
    procedure TForm1.FormCreate(Sender: TObject);
    var
      f: string;
    begin
      f := ExtractFilePath(Application.ExeName) + 'WebDoc.htm';
      WebBrowser1.Navigate('file:///C:UsersAdminDesktop新建文件夹WebDoc.htm');
    end;
     
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      WB_SaveAs_MHT(WebBrowser1,'C:UsersAdminDesktop11.mht');
    end;
     
     
    ADODB_TLB.pas
     
    CDO_TLB.pas
     
     
     
  • 相关阅读:
    如何避免延迟发货和虚假发货
    买家一个单下了两件,我想发两个包裹怎么办
    我有多个店铺,怎么方便的打单?
    一个人在我店里下了几个单,可以合起来发一个包裹吗
    疫情风险高的地方快递都不发,我怎么把这些地区的订单排除掉?
    拼多多商家发货后,可以实时提醒哪些物流快超时了吗
    史上最通俗易懂的手写人工神经网络——(一)(转载自https://blog.csdn.net/xipengbozai/article/details/118115444)
    炸天的3D引擎OpenCASCADE的用法及案例(https://blog.csdn.net/xipengbozai/article/details/117044032?spm=1001.2014.3001.5502)
    屌炸天的3D引擎OpenCASCADE的用法及案例(转载之处:)
    JS实现环绕地球飞行的3D飞行线动画效果(JS+HTML)
  • 原文地址:https://www.cnblogs.com/xe2011/p/3876347.html
Copyright © 2011-2022 走看看