Forum
Grundkurs
»Introduktion
»Snabbguide
»Komponenter
»Händelser
»Strängar
»Räkna med Delphi »Egna
typer
»Selektion
»Iteration
»Menyer
»Funktioner
»Arraystrukturer
Tips & Tricks
»Nya tips
»Blandat
»Databaser
»Filer
»Forms
»Grafik
»Internet
»Komponenter
»Matematik
»Multimedia
»Objekt/ActiveX
»Skrivare
»Strängar
»System
»Mest lästa tips
Artiklar
»Delphi och ADO
»Bygga en DLL
»Skapa en enkel rapport
»Hantera registret
»Enheter, units
»Klassen TCanvas
»Använd LookUp Controls
Nya
tips
Lägg
till tips
Delphilänkar
Gästbok
|
|
|
|
Visa data från TWebBrowser innan den postas
|
Kategori: Internet
Inlagt: 2007-11-22
Läst: 1646
Inlagt av: Staffan Berg
|
Beskrivning |
Med detta exempel kan du förhandsgranska data som blir postad från en TWebBrowser innan den skickas iväg.
|
Kod |
procedure TPostForm.WebBrowser1BeforeNavigate2(ASender: TObject; const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData, Headers: OleVariant; var Cancel: WordBool) ; function OleVariantToMemoryStream(OV: OleVariant): TMemoryStream; var Data: PByteArray; Size: integer; begin Result := TMemoryStream.Create; try Size := VarArrayHighBound (OV, 1) - VarArrayLowBound(OV, 1) + 1; Data := VarArrayLock(OV) ; try Result.Position := 0; Result.WriteBuffer(Data^, Size) ; finally VarArrayUnlock(OV) ; end; except Result.Free; Result := nil; end; end; var ms: TMemoryStream; ss: TStringStream; begin ss := TStringStream.Create('') ; try if Length(PostData) > 0 then begin ms := OleVariantToMemoryStream(PostData) ; ms.Position := 0; ss.CopyFrom(ms, ms.size) ; ss.Position := 0; ShowMessage('HEADER:' + Headers + #13#10#13#10 + ss.DataString) ; end; finally ss.Free; end; end;
|
|
|