Hola,
Lo último que refieres puede hacerse de esta forma:
Código Delphi
[-]
uses
ActiveX;
procedure TForm1.Button1Click(Sender: TObject);
var
PFile: IPersistFile;
begin
PFile := WebBrowser1.Document as IPersistFile;
PFile.Save(StringToOleStr('C:\archivo.html'), False);
end;
Eso para un "TWebBrowser" como el que acompaña a Delphi. Yo he sacado la información del componente "
EmbeddedWB", el cual te proporciona otras sutilezas quizá de interés para el caso: investígalo. Por ejemplo, podrías guardar el documento del "TWebBrowser" en un "Stream", sin necesidad de pasar por ningún archivo.
Tal vez, incluso, sea bien utilizar el "
EmbeddedWB" directamente, olvidándonos del "TWebBrowser" que acompaña a Delphi: echa un vistazo en la página Web del componente porque encontrarás no poca información y componentes de código abierto, entre los cuales el que se ha mencionado.