Hmm..
Hallo,
stimmt, es gibt ja jetzt GetIt. Hab mit Turbo Pascal angefangen und lange Zeit in der alten Firma noch mit XE7 gearbeitet. Das hat sich noch nicht so in den Kopf gebrannt.
Ich mache das im Moment eher als Hobby nebenbei und habe über diese Quelle gar nicht nachgedacht.
@HolgerX Für die Blockade einer Tastatureingabe benötigt man keine
DLL. Das geht auch in jedem normalen Programm. Mein Code vom Eingangspost musst nur um ein Exit(1); ergänzt werden, dann sind keine Eingaben mehr möglich.
Ich schaue trotzdem mal, ob man mit der Methode GetRawInputDeviceInfo irgendwas erreichen kann. Wobei das eher so aussieht, als wenn man sich hier mit eher vorab Devices auflisten kann. Im Keydown bzw. Keyup Event steht dann ja leider keine Device ID zur Verfügung. Eventuell gibt es aber doch noch mehr Informationen. Ex, Ex2, Ex3 lässt grüßen. Mal gucken ob man TKeyboardLowLevelHookStruct also noch erweitern kann.
Die
DLL benötigst Du, wenn du 'Global', also auch für andere Applikationen die Tastatureingabe abfangen willst.
Auch bekommst Du hier mit deinem LowLevelHookStruct/SetWindowsHookEx keine DeviceInfos. Dies geht nur per RawInputDevices.
Mit GetRawInputDeviceInfo kannst Du innerhalb der WM_INPUT (nach RegisterRawInputDevices) arbeiten, da in der Message ein
Handle enthalten ist, mit dem Du per GetRawInputData ein RAWINPUT mit RAWINPUTHEADER erhältst. Damit dann per GetRawInputDeviceInfo z.B. den HIDName holen und damit das Device identifizieren.
Mit Keydown bzw. Keyup kannst Du hier nichts anfangen....