also das array ist wie anfangs erwähnt wie folgt aufgebaut:
Zitat:
void BeforeNavigate2(
IDispatch *pDisp, --> rgvarg[6]
VARIANT *
URL, --> rgvarg[5]
VARIANT *Flags, --> rgvarg[4]
VARIANT *TargetFrameName, --> rgvarg[3]
VARIANT *PostData, --> rgvarg[2]
VARIANT *Headers, --> rgvarg[1]
VARIANT_BOOL *Cancel --> rgvarg[0]
);
die BeforeNavigate2 Methode ist wie folgt deklariert
Delphi-Quellcode:
procedure BeforeNavigate2(
const pDisp: IDispatch;
var URL: OleVariant;
var Flags: OleVariant;
var TargetFrameName: OleVariant;
var PostData: OleVariant;
var Headers: OleVariant;
var Cancel: WordBool);
was mich aus dem mitgelieferten beispiel nun verwirrt ist das
man die flag zum canceln des request ändern kann,
das aber bei jedem anderen parameter beim compilieren
der debugger aufgerufen wird
soll heißen wenn ich folgendes in den code einbaue wird der
request nicht gesendet
PDispParams(Params)^.rgvarg[0].pbVal^ := 1; // Cancel flag = True
wenn ich aber versuche z.b. die
url zu ändern mit hilfe von
PDispParams(Params)^.rgvarg[5].pvarVal^:= 'http://www.domain.com';
dann meckert der debugger, andersrum kann ich aber über den selben zeiger
die
url ausgeben lassen