Вот код... сохраняет с картинками и т.п. по крайней мере сохраняет так же как еслиб ты страницу сохранил через IE
| Код | unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, OleCtrls, SHDocVw, ActiveX, MSHTML;
type TForm1 = class(TForm) WebBrowser1: TWebBrowser; Edit1: TEdit; Button1: TButton; Button2: TButton; SaveDialog1: TSaveDialog; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure SaveHTMLSourceToFile(const FileName: string; WB: TWebBrowser); private { Private declarations } public { Public declarations } end;
var Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.SaveHTMLSourceToFile(const FileName: string; WB: TWebBrowser); var PersistStream: IPersistStreamInit; FileStream: TFileStream; Stream: IStream; SaveResult: HRESULT; begin PersistStream := WB.Document as IPersistStreamInit; FileStream := TFileStream.Create(FileName, fmCreate); try Stream := TStreamAdapter.Create(FileStream, soReference) as IStream; SaveResult := PersistStream.Save(Stream, True); if FAILED(SaveResult) then MessageBox(Handle, 'Fail to save HTML source', 'Error', 0); finally FileStream.Free; end;
try WebBrowser1.ExecWB(4, 0); except on E: Exception do ShowMessage('bred'); end; end;
procedure TForm1.Button1Click(Sender: TObject); begin if SaveDialog1.Execute then SaveHTMLSourceToFile(SaveDialog1.FileName, WebBrowser1); {сохранение загруженной странички.} end;
procedure TForm1.Button2Click(Sender: TObject); begin WebBrowser1.Navigate(Edit1.Text);{по нажатию кнопки открывается в окне WebBrowser1 страничка с адрессом указанным в Edit1.Text} end;
end.
|
|