Hoi,
habe mal wieder ein Übersetzungsproblem ...
Funktion laut
Dll Headerdatei
Code:
EIB7_ERR EIB7ReadFIFOData(EIB7_HANDLE eib, void* data, unsigned long cnt, unsigned long* entries, long timeout);
Aufruf aus einem Beispiel (C)
Code:
error = EIB7ReadFIFOData(eib, udp_data, 1, &entries, 0);
mit
typedef int EIB7_HANDLE;
EIB7_ERR error;
EIB7_HANDLE eib;
unsigned char udp_data[200];
unsigned long entries;
meine Übersetzung
function EIB7ReadFIFOData(eib:EIB7_HANDLE; data:Pointer; cnt:Cardinal; entries:PCardinal; timeout:Integer): EIB7_ERR ; cdecl; external 'eib7.dll' ;
mein Aufruf
Delphi-Quellcode:
function TEIB.FIFO_Messdaten_Lesen:Cardinal ;
begin
Err := EIB7ReadFIFOData(EIB_Handle, @UDP_Daten, 1, @result ,0) ;
end;
mit
Err : EIB7_ERR ;
EIB_Handle : Integer ;
udp_daten : array[0..199] of byte ;
wäre das grundsätzlich so OK, mit der array definition + übergabe bin ich unsicher ? - denn bevor ich weitermache sollten die grundsachen stimmen ...
cya