Gast
#1702013
Hallo zusammen,
ich spiele gerade mit der Funktion FT_Open bzw. FT_OpenEx herum und
bekomme bei FT_OpenEx immer einen Fehler 'FT_INVALID_HANDLE'.
Wenn ich das Device über FT_Open(0,&ftHandle) öffne, ist alles OK und
ich kann weiterarbeiten.
Der Versuch das Device über
FT_OpenEx(&loc_id[0],FT_OPEN_BY_LOCATION,&ftHandle)
zu öffnen, mündet im o.a. Fehler.
Die loc_id habe ich - wie von FTDI beschrieben mittels
FT_ListDevices(loc_id,&anz,FT_LIST_ALL | FT_OPEN_BY_LOCATION) ermittelt.
Ich habe mit FT_PROG die zurückgegebene Location-Id überprüft - diese
stimmt überein.
Betriebssystem ist WIN XP SP3.
Hier der Codeausschnitt:
DWORD anz=0,loc_id[64];
FT_HANDLE ftHandle;
FT_STATUS ftStatus=FT_ListDevices(&anz,NULL,FT_LIST_NUMBER_ONLY);
if (ftStatus == FT_OK)
{
ftStatus=FT_ListDevices(&loc_id,&anz,FT_LIST_ALL |
FT_OPEN_BY_LOCATION);
}
if ((ftStatus == FT_OK) && (anz > 0))
{
ftStatus = FT_OpenEx(&loc_id[0],FT_OPEN_BY_LOCATION,&ftHandle);
// ftStatus = FT_Open(0,&ftHandle); //die Funktion geht
}
if ((ftStatus == FT_OK) && (anz > 0))
{
if (ftHandle != FT_INVALID_HANDLE)
{
// hier gehts weiter
}
else
{
// hier ist ein Fehler aufgetreten
}
}
Wo könnte der Fehler liegen?
Momentan benutze ich die FTD2XX.DLL in der Version 3.1.8.1
Gruß
TK