void __fastcall TForm1::SetHtml( TCppWebBrowser *WebBrowser,AnsiString Html ) { IStream *Stream; HGLOBAL hHTMLText; IPersistStreamInit *psi;
if( WebBrowser->Document == NULL ) return; hHTMLText = GlobalAlloc( GPTR, Html.Length() + 1 ); if( 0 == hHTMLText ) { ShowMessage( "GlobalAlloc Error" ); return; }
CopyMemory( hHTMLText, Html.c_str(), Html.Length() );
OleCheck( CreateStreamOnHGlobal( hHTMLText, true, &Stream ) );
try { OleCheck( WebBrowser->Document->QueryInterface( __uuidof(IPersistStreamInit), (void **)&psi ) ); try { OleCheck( psi->InitNew() ); OleCheck( psi->Load(Stream) ); } catch( ... ) { delete psi; } } catch( ... ) { delete Stream; } delete psi; delete Stream; }

|