Próbuję wyłączyć urządzenie USB, gdy jest ono podłączone do systemu Windows w wersji Family (bez GPO). Pracowałem w kilku językach, aby osiągnąć swój cel, ale bez powodzenia. Poszukuję odpowiedniej metody linuksowego udev.
Chcę wyłączyć urządzenie USB podczas „hot-plug”, ale nie wiem, czy jest to możliwe.
Moje pierwsze podejście:
- Biblioteka Setupapi w C ++ i C #
- Polecenie cmdlet programu PowerShell Disable-PNPDevice
- Urządzenie, którego chcę, to wyłączyć klawiaturę, więc rozejrzałem się również po klasach CIM_keyboard i innych ...
- Następnym krokiem są sterowniki Windows ...
Mój problem z tymi rozwiązaniami polega na tym, że urządzenie należy usunąć i włożyć ponownie w celu dezaktywacji, gdy chcę, aby wyłączenie zostało wprowadzone natychmiast po włożeniu.
W rejestrze systemu Windows ( HKLM \ SYSTEM \ CurrentControlSet \ Services \ kbdclass or kbdhid
) wartością Start
można zarządzać ( 0x04
= Wyłącz) w zależności od klasy, ale jeśli ją rozumiem, jeśli to zrobię, ta powiązana usługa nie uruchomi się wcale, więc w tych przypadkach moja druga klawiatura (główna) pozostaje aktywny i nie znajduję się bez klawiatury.
Co sądzisz o bibliotece libusb-win32? Czy istnieje konkretny klucz rejestru systemu Windows, aby natychmiast zmienić stan urządzenia?
Chciałem wiedzieć, czy jest to możliwe i czy mogę być prowadzony? Dziękuję Ci.