Einzelnen Beitrag anzeigen

braini4c

Registriert seit: 26. Jun 2008
13 Beiträge
 
#1

WinAPI Funktionen - Problem mit der FTD2xx.dll ?!

  Alt 19. Sep 2008, 14:50
Hallo,

ich versuche ein USB Oszilloskop anzusteuern.
MEphisto Scope
Dort gibt es auch Programmierbeispiele für C++ und Delphi.
Der C++ Code funktioniert. Der für Delphi leider nicht.

Bisher klappt es soweit:
Das Device kann geöffnet werden ("FT_Open")
Ich kann darauf schreiben ("FT_Write")

Bei der Funktion "FT_Read" allerdings hängt sich das Programm auf und es passiert nichts weiter.

Die Funktionen sind folgendermaßen deklariert:
Delphi-Quellcode:
function FT_Open(PVDevice:Integer; ftHandle:Pointer ) : FT_Result ; stdcall ; External FT_DLL_Name name 'FT_Open';
function FT_Write(ftHandle:Dword; FTOutBuf : Pointer; BufferSize : LongInt; ResultPtr : Pointer ) : FT_Result ; stdcall ; External FT_DLL_Name name 'FT_Write';
function FT_Read(ftHandle:Dword; FTInBuf : Pointer; BufferSize : LongInt; ResultPtr : Pointer ) : FT_Result ; stdcall ; External FT_DLL_Name name 'FT_Read';
*edit: FT_DLL_name ist 'FTD2XX.dll'

in C++ sieht das ganze so aus:

Code:
#ifdef __cplusplus
extern "C" {
#endif
...
FTD2XX_API
FT_STATUS WINAPI FT_Read(
    FT_HANDLE ftHandle,
    LPVOID lpBuffer,
    DWORD nBufferSize,
    LPDWORD lpBytesReturned
    );

FTD2XX_API
FT_STATUS WINAPI FT_Write(
    FT_HANDLE ftHandle,
    LPVOID lpBuffer,
    DWORD nBufferSize,
    LPDWORD lpBytesWritten
    );
...
}
Hat jemand eine Idee woran das liegen könnte? Ich hab offen gestanden keinen blassen Schimmer.
Ich hab keine Ahnung was der C Compiler daraus macht (im Vergleich zum Delphi oder C++ Kompiler)

Bin für jede Hilfe dankbar

MfG
Julian
  Mit Zitat antworten Zitat