Seit einiger Zeit versuche ich, auf ein an der USB-Schnittstelle angeschlossenes Gerät mit Delphi4 unter Windows 98 zuzugreifen.
Beim Anstecken wird die Elektronik als HID (Human Interface Device) erkannt, und der Gerätemanager liefert als Treiber die Informationen:
C:\Windows\System32\Drivers\Hidusb.sys
C:\Windows\System32\Drivers\Hidparse.sys
C:\Windows\System32\Drivers\Hidclass.sys
C:\Windows\System\Vmm32.vxd
Aus verschiedenen Veröffentlichungen habe ich herausbekommen, daß der Aufruf des Handles meist in der Form
DeviceHandle := CreateFile('\\.\CompuLABusb_0', Generic_write,
File_Share_write, nil,open_existing,
0, TemplateHandle);
geschieht, wobei die Zeichenkette '\\.\CompuLABusb_0' für eine Bezeichnung des verwendeten Treibers steht. Ich sah auch schon '\\.\Thermometer_0' oder '\\.\ezusb-0'. Nun möchte ich aber nicht diese Treiber verwenden, die für eine völlig andere Hardware geschrieben wurden, sondern die in den Spezifikationen "Device Class Definition for Human Interface Devices HID)" und "HID Usage Tables" beschriebenen Befehle verwenden. Mein Problem liegt darin, daß ich nicht herausfinden kann, wie ich die Treiberdatei benennen muß, damit sie angesprochen wird. Delphi meldet, daß das Handle vermutlich nicht richtig initialisiert wurde, und die Rückgabewerte, die ich bekomme, sind alles andere als sinnvoll. Wer hat sich schon mit der gleichen Materie beschäftigt, und kann einem USB-Neuling Ratschläge geben?
Schon mal schönen Dank im Voraus!