|
function SetHtml3(const WebBrowser: TWebBrowser; const Html: string): Boole
$ L, ]/ n" a9 u' Lan;
' c p+ v$ @ ?var / T: _6 N L2 i* O6 e" O+ V6 M/ ?
Stream: TStringStream;
* X! q) u3 \7 m# D8 M5 V |; g Adapter: TStreamAdapter;
7 s# U1 J/ [" X7 ]begin " A( e* n4 J) d9 `
Stream := TStringStream.Create(Html); , }. ~! z% z8 m- V6 ~' F
try - g5 Y9 a. R' v. B6 Q" @ a( c
Adapter := TStreamAdapter.Create(Stream);
3 C' m4 {7 B# f" N5 e7 f5 g! @ try
2 `& Y2 J* l. z% [. h! x* w7 ^ u OleCheck((WebBrowser.Document as IPersistStreamInit).Load(Adapter)); 1 J& T( ]. {/ K( d
Result := True; 1 n! u+ l5 ^8 t, j* \ b- a
finally 8 Y, Y8 J+ \; P& }# |5 ^
Adapter.Free;
1 P% F. y4 g+ |- } end; 7 z8 P0 E! Y9 \% T; j% d
finally
7 C5 Z( _( G% o* t- |9 ]7 N0 d Stream.Free;
, h+ D5 f7 Y( p end; : H2 w3 u- _) C4 I/ m
end; ' ]3 E- i( _: ?' ^
function GetHtml3(const WebBrowser: TWebBrowser; var Html: string): Boolean; ' u* `. \; o1 v
4 T) o8 ^6 O/ P* e( c8 Mvar
% r5 F7 D v( i7 i. N' q" h$ l Stream: TMemoryStream; 7 T' L$ Z* q. } C$ D
Adapter: TStreamAdapter;
. |1 ~& Z6 I! N* {begin 7 w0 }+ ]! u5 c* F3 Z4 G0 a
Stream := TMemoryStream.Create;
/ q, b4 K# v& A0 ^1 p6 j+ G try
& ]0 l- }7 Q- k4 v, O0 v# x( N Adapter := TStreamAdapter.Create(Stream);
7 H7 k& U- l* [ try
: j1 ]3 {) T2 N: {5 H' g OleCheck((WebBrowser.Document as IPersistStreamInit).Save(Adapter, Tru
$ J) R# x/ s* L4 ie));
- g; D$ H2 W( r! q3 { SetLength(Html, Stream.Size+1);
4 R* @8 e% h7 M5 A9 A- L" ? StrLCopy(PChar(Html), Stream.Memory, Stream.Size);
a6 p6 u+ ~ R# t7 ` Result := True; 2 ~* `: J3 _" X1 h# m" b' k( z
: t: m6 y% {0 e0 X" g# S finally
: E- s# ], }3 b. K4 c' c K Adapter.Free;
6 \4 D; }0 j! t end; ' }8 d5 w3 h `" D6 Y8 ?! Q
finally 6 l9 U1 ]5 d& C/ m) F5 P& T
Stream.Free;
1 E" o K2 x& x# Q- f, p end; : S( ~2 V7 c( M( h4 h6 `
end; |