![]() |
AW: wie Hardware (HID) erkennen und via Programm verbinden/trennen?
Okay, bleib mal locker. Alle diese Funktionen sind üblicherweise Frontends zu den IOCTLs.
Haste mal mit ZwDeviceIoControlFile probiert? Wenn ja, was sind die Ergebnisse im IoStatusBlock?! |
AW: wie Hardware (HID) erkennen und via Programm verbinden/trennen?
So, hab's versucht.
Zitat:
Und nun wo das Unicode angepaßt wurde, heißt es Result (NTSTATUS) = 0, IoStatusBlock bleibt leer und GetLastError meint Zitat:
Delphi-Quellcode:
Wobei ich halb immernoch nicht weiß, was man als X genau angeben muß.
W := ZwDeviceIoControlFile(H, 0, nil, nil, @IOSB, IOCTL_HID_DEACTIVATE_DEVICE,
nil, 0, nil, 0); // oder W := ZwDeviceIoControlFile(H, 0, nil, nil, @IOSB, IOCTL_HID_DEACTIVATE_DEVICE, @X, SizeOf(X), nil, 0); |
AW: wie Hardware (HID) erkennen und via Programm verbinden/trennen?
Was hat das mit Unicode zu tun und warum gerade JwaWinType?
Du hast kaum Ahnung, wie man die API benutzt und meinst aber, dass die Übersetzung schuld sei? |
AW: wie Hardware (HID) erkennen und via Programm verbinden/trennen?
Ups, tut mir leid. Habe dich ohnehin auf die falsche Fährte geführt.
![]() Sorry :oops: |
AW: wie Hardware (HID) erkennen und via Programm verbinden/trennen?
Weil ich grade diese Units hier rumliegen hatte?
Nja, als ich Letztens nach einigen APIs gesucht hatte, war ich darüber gestolpert und hatte es runtergeladen. Das ZwDeviceIoControlFile wird vom JWA dynamisch geladen, was allerdings nicht klappte.
Delphi-Quellcode:
Also Unicode ... nja, es ist als PWideChar deklariert, aber es wurden die Ansi-APIs aufgerufen. :stupid:
// unit Windows
type LPWSTR = PWideChar; // unit JwaWinType type LPTSTR = {$IFDEF USE_DELPHI_TYPES} Windows.LPWSTR {$ELSE} LPWSTR {$ENDIF}; LPCTSTR = LPTSTR; function GetModuleHandle(lpModuleName: LPCTSTR): HMODULE; stdcall; function LoadLibrary(lpLibFileName: LPCTSTR): HMODULE; stdcall; function GetModuleHandle; external kernel32 name 'GetModuleHandleA'; function LoadLibrary; external kernel32 name 'LoadLibraryA'; Nach W geändert und schon wurde die DLL und die Prozedur gefunden. Eigentlich hab ich meine paar APIs selber deklariert, aber da die Delphi-Suche (Strg+Shift+F) vorhin meinte, diese API sei darin vorhanden, hab ich es zu Testen halt einfach mal daraus aufgerufen. Sonst nutzte ich dieses JWA eigentlich nicht direkt. [add] 'ne Deklaration des Type3InputBuffer hatte ich eh noch nicht gefunden. :oops: Aber ich sagte ja ... wenn ich Pech hab, dann haben diese APIs eh nur was mit diesen Miniport-Treibern zu tun. |
AW: wie Hardware (HID) erkennen und via Programm verbinden/trennen?
Zitat:
|
AW: wie Hardware (HID) erkennen und via Programm verbinden/trennen?
Zitat:
![]() Hab hier kein Windows PSDK drauf und da man z.B. abundzu mal irgendwelche Konstanten benötigt, von welchen im MSDN nicht immer der Wert erwähnt wird, muß man halt wo anders suchen ... u.A. auch dort drin und bis jetzt war es schon eine recht gute Quelle. (wobei ich diese Units noch nie wirklich direkt eingebunden hatte) |
AW: wie Hardware (HID) erkennen und via Programm verbinden/trennen?
Die Downloads auf dieser Seite sind nicht bestimmt in neuen Programmen eingesetzt zu werden. Sie sind alt und werden nicht gepflegt.
Das steht da auch übrigens: Zitat:
Benutze stattdessen: ![]() EDIT: Ich hab den alten Link mal angepasst, damit da niemand in Versuchung gerät. |
AW: wie Hardware (HID) erkennen und via Programm verbinden/trennen?
Weil's mir gerade untergekommen ist
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:05 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz