Seite 1 von 1

HidD_GetHidGuid_(HidGuid) funktioniert nicht ?

Verfasst: 25.02.2005 21:30
von Holger
Hallo,

ich möchte HID Daten empfangen und senden.
Nachdem ich die o.g. API Funktion aufrufe, erscheint ein Requester, daß es sich dabei um keine Funktion, Array oder Linked List handelt.
Unterstützt PureBasic die Funktionen der hid.dll ?

Hat jemand von Euch einen Beispielcode, um z.B. eine USB Maus zu finden und ihre Daten in PureBasic zu verarbeiten ( ich bin API Anfänger )?

Vielen Dank im voraus
Holger

Verfasst: 25.02.2005 21:56
von ts-soft
> Unterstützt PureBasic die Funktionen der hid.dll ?
nativ sind diese Funktionen nicht verfügbar, könntest es höchstens mit OpenLibrary versuchen.

Verfasst: 26.02.2005 10:52
von Holger
Vielen Dank für die Antwort.
Auf die Funktionen der hid.dll kann ich nun mit OpenLibrary(0,"hid.dll") zugreifen. Mit *HidGuid=IsFunction(0,"HidD_GetHidGuid") erhalte ich die Adresse, in der die HidGuid steht.
Wenn ich dann mit *a=SetupDiGetClassDevs_(*HidGuid,0,0,#MB_DIGCV_PRESENT | #MB_DIGCV_DEVICEINTERFACE) die Adresse des Arrays holen möchte, bekomme ich eine Fehlermeldung, das beide Konstanten nicht definiert sind.
Die VB Deklarationen lauten:

Public Const DIGCV_PRESENT = &H2
Public Const DIGCV_DEVICEINTERFACE = &H10

Wie kann ich beide Konstanten in PureBasic an die Funktion übergeben ?

Verfasst: 26.02.2005 12:58
von Kaeru Gaman

Code: Alles auswählen

#DIGCV_PRESENT = &H2
#DIGCV_DEVICEINTERFACE = &H10
zu beginn des programms deklariert diese konstanten zur globalen verwendung.

Verfasst: 26.02.2005 13:01
von MVXA
PB nimmt aber &H... so nicht an. Korrekt sieht es so aus:

Code: Alles auswählen

#DIGCV_PRESENT = $2
#DIGCV_DEVICEINTERFACE = $10