HidD_GetHidGuid_(HidGuid) funktioniert nicht ?

Windowsspezifisches Forum , API ,..
Beiträge, die plattformübergreifend sind, gehören ins 'Allgemein'-Forum.
Holger
Beiträge: 53
Registriert: 25.02.2005 21:17

HidD_GetHidGuid_(HidGuid) funktioniert nicht ?

Beitrag 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
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag 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.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Holger
Beiträge: 53
Registriert: 25.02.2005 21:17

Beitrag 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 ?
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

Code: Alles auswählen

#DIGCV_PRESENT = &H2
#DIGCV_DEVICEINTERFACE = &H10
zu beginn des programms deklariert diese konstanten zur globalen verwendung.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
MVXA
Beiträge: 3823
Registriert: 11.09.2004 00:45
Wohnort: Bremen, Deutschland
Kontaktdaten:

Beitrag von MVXA »

PB nimmt aber &H... so nicht an. Korrekt sieht es so aus:

Code: Alles auswählen

#DIGCV_PRESENT = $2
#DIGCV_DEVICEINTERFACE = $10
Bild
Antworten