Einzelnen Beitrag anzeigen

R2009

Registriert seit: 9. Mär 2009
Ort: Heidelberg
440 Beiträge
 
Delphi 2007 Professional
 
#1

Probleme mit Übergabe in DLL

  Alt 11. Okt 2010, 06:44
Delphi-Version: 2007
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
Rainer Unger
Mein Profil:
Studium Allgemeine Elektrotechnik TH Darmstadt
Entwicklung von Tools für die Rundsteuer und Zählertechnik.
uP's Atmel Prozessoren (ATmega16,32,88...) in C und Assembler.

Geändert von R2009 (11. Okt 2010 um 07:04 Uhr)
  Mit Zitat antworten Zitat