Hallo erstmal
Ich hab mal wieder ein Problem und hoffe, dass ihr mir helfen könnt.
Situation:
Ich hab einen Record von dieser Art:
Delphi-Quellcode:
type
Prec = ^Trec;
Trec = record
consock: TSocket;
end;
In meiner erstern Prozedur reservier ich einen Speicherbereich mit diesem Record:
Delphi-Quellcode:
var
recObj: Prec;
GetMem(recObj, sizeof(Trec));
sendObj.consock := tmpSock[der tut nix zur Sache, kommt aus einem WinSock accept Vorgang];
Als nächstes ruf ich einen Prozedur auf mit dem record arbeiten sollen:
Delphi-Quellcode:
procedure bla(recObj: Prec);
var p: pointer;
begin
GetMem(p, sizeof(TSocket));
CopyMemory(p, pointer(recObj.consock), sizeof(TSocket));
end;
Bei dem CopyMemory bekomm ich dann aber eine
Access Violation, warum versteh ich leider momentan nicht.
Ich hoffe jemand kann mir sagen wo das Problem liegt und villeicht auch den Hintergund ein wenig erläutern.