|
function SetHtml3(const WebBrowser: TWebBrowser; const Html: string): Boole " Q' M N! w% {9 B+ ~
an; / }8 w$ g9 M" `! l1 B! f* D4 ]6 k
var ' t2 i# k! ^( [/ O5 z% x$ ^
Stream: TStringStream;
p$ v+ z/ ?" M5 D) B% y: A5 @: K7 V Adapter: TStreamAdapter; ; j7 o$ f6 _+ T/ j8 ]8 T/ g* k0 L/ N
begin
/ Y I! G4 W. p V1 n# @ Stream := TStringStream.Create(Html); : f, i- G$ j( @1 B
try ' C6 T. [2 V: Z0 k& D
Adapter := TStreamAdapter.Create(Stream); 7 C/ | Q8 p2 C! G9 m9 l& D0 T
try 8 e ]/ u( j0 g- v
OleCheck((WebBrowser.Document as IPersistStreamInit).Load(Adapter)); / z4 v9 S. ^& N, c5 W8 C& k. J- o& v
Result := True;
4 R: T% F- x3 F3 A finally
% B) o9 \: i& ` Adapter.Free;
( @: H2 ]$ S- ^7 v& G end; ! J: u6 c u- Q6 q6 T( `
finally
* @# j, q1 N& y P; i Stream.Free;
, ^; `5 Y- z/ Z' o l end;
6 P: B) h( @8 q3 w8 S* Oend;
1 S1 ^, L0 u: J" h2 a2 q3 g( B# @function GetHtml3(const WebBrowser: TWebBrowser; var Html: string): Boolean;
0 t0 [! M( f l7 @8 b : k/ k' j6 F/ m$ L* i
var
, x4 t! {2 d! A- Y- O6 G( K5 K Stream: TMemoryStream;
- N' W% r, x Z+ M, g Adapter: TStreamAdapter;
8 l/ Z0 h) n- |0 m5 z7 jbegin
7 w$ u% G* N9 l( N7 l) Q r Stream := TMemoryStream.Create; $ i2 ? K: h& m* P, E: K
try ; E9 H8 ]9 r: \
Adapter := TStreamAdapter.Create(Stream);
* \9 |( W' c, t% O- R( Y. X! n try
, B9 _+ d$ ~" R, |9 G" \ OleCheck((WebBrowser.Document as IPersistStreamInit).Save(Adapter, Tru * H/ [& H" g! l! m; V, }
e)); # E R* i4 J+ P! i p- n+ r! Q
SetLength(Html, Stream.Size+1);
6 e! q+ V4 ^6 s6 c9 X StrLCopy(PChar(Html), Stream.Memory, Stream.Size); $ I0 m& ? a3 _, X: b7 e- N
Result := True;
i/ W4 p' O8 z! h
* `0 g" `8 j) |1 L, M finally
$ [; s5 i$ b# i9 ]9 S7 m5 g Adapter.Free; & {, L8 {' E( `8 N
end;
9 L0 ^% _; C Y, C$ M' v9 F6 u1 y finally
+ G: F3 j, T2 H Stream.Free;
! K' V7 p% ^" s" E end;
; t/ ]0 z \- s" F0 Gend; |