Hi
DP'ler,
ich habe ein Problem mit der Parameterübergabe in eine
DLL.
Die
DLL heisst FTD2XX.DLL und stammt von FTDI. Genutzt wird diese
DLL zum ansprechen der USB device in einem USB seriell controller.
Nach durchforsten aller möglichen Dokumentationen komme ich einfach nicht mehr weiter.
In der Dokumentation ist die Funktion wie folgt beschrieben:
FT_STATUS FT_GetComPortNumber (FT_HANDLE ftHandle, LPLONG lplComPortNumber)
Ich habe sie folgenmdermassen implementiert:
Delphi-Quellcode:
function FT_GetComPortNumber(ftHandle:Dword; ComPortNumber:Dword):FT_Result;
stdcall;
External FT_DLL_Name
name '
FT_GetComPortNumber';
Function GetFTComPortNumber : FT_Result;
var i:Dword;
begin
Result := FT_GetComportNumber(FT_handle,i);
//,@SerialNumber FT_handle
If Result = FT_OK
then FT_Comnumber := '
COM'+IntToStr(comnumber);
end;
Das i steht hier nur versuchsweise, hier soll später eine globale Variable stehen.
Was ich auch anstelle, die Funktion GetFTComPortNumber liefert mir immer die Fehlernummer 6: fehlerhafte Parameter zurück.
FT_handle hat das Format Dword und ist korrekt. Es wird auch schon für andere Funktionen genutzt!
Mach ich irgendetwas grundsätzlich falsch? Kann mir jemand helfen?
Grüsse
rainer