Hallo,
ich arbeite gerade an einem ganz simplen Internetfilter, aber irgendwie komme ich hier nicht vorran.
Es geht um die ws2_32 Funktion "getaddrinfo". Meine Definition der Funktion sieht folgendermaßen aus:
Code:
var orig_getaddrinfo, new_getaddrinfo: function(nodename: PAnsiChar; servname : PAnsiChar; hints: PAddrInfo; var res: PAddrInfo): Integer; stdcall;
Da ich keine Defintion von PAddrInfo finden konnte, benutze ich diese:
Code:
type
PAddrInfo = ^TAddrInfo;
TAddrInfo = packed record
ai_flags: Integer;
ai_family: Integer;
ai_socktype: Integer;
ai_protocol: Integer;
ai_addrlen: LongWord;
ai_canonname: Array of AnsiChar;
ai_addr: PSOCKADDR;
ai_next: PAddrInfo;
end;
Wenn ich meine Hook-
DLL zum Beispiel in Firefox "einfüge", stürzt Firefox direkt beim Start ab.
Am Hooken selbst kann es eigentlich nicht liegen, da alle anderen Hooks gut funktionieren.
Ich nehme daher an, dass an meiner gebastelten Funktionsdefinition irgendwas faul ist,
also hab ich ein bisschen mit PAnsiChar und PWideChar rumgespielt, aber am Fehler ändert sich nichts.
Ich hoffe ihr könnt mir - trotz weniger Informationen - helfen.
[EDIT]
Betriebssystem: Windows 7 - 64bit
[/EDIT]