Witam,
Mam takie struktury:
type
TIPv4_Address = Array [0..14] of AnsiChar;
TMAC_Address = Array [0..16] of AnsiChar;
TNetworkInterface = packed record
aIP_Address: TIPv4_Address;
aMAC_Address: TMAC_Address;
end;
PNP_NetworkInterfaceList = ^TNP_NetworkInterfaceList;
TNP_NetworkInterfaceList = packed record
dwInterfaceCount: DWORD;
aInterfaceList: Array of TNetworkInterface;
end;
Chodzi o to, że chciałbym wysłać strukturę TNP_NetworkInterfaceList poprzez sieć, ale jak widać jest to dynamiczna tablica. Rozszerzam ją sobie za pomocą SetLength, ale za cholerę nie mogę potem wyzerować jej pamięci (ZeroMemory) ani jej wysłać, bo ciągle albo dostaję "Runtime error" albo "Access violation".
Jak poprawnie wysłać taką strukturę? Uzywam standardowych funkcji WinAPI, czyli m.in funkcji send() i recv().
Oczywiście przed wysłaniem właściwego pakietu wysyłam wcześniej mały pakiet informujący o wielkości nadchodzącego pakietu.