Dispositivi di interfaccia umana (HID)
Panoramica della tecnologia HID (Human Interface Devices).
Per sviluppare dispositivi di interfaccia umana (HID), sono necessarie queste intestazioni:
Per la guida alla programmazione, vedere Dispositivi di interfaccia umana (HID).
Per le API di programmazione HID Win32, vedere Informazioni di riferimento su Dispositivi di interfaccia umana Win32.
Questa sezione contiene le interfacce di programmazione correlate ai dispositivi di interfaccia umana (o HID). In genere, questi sono dispositivi che gli esseri umani usano per controllare direttamente l'operazione dei sistemi informatici.
Routine di supporto HIDClass
Esistono routine fornite dal sistema che le applicazioni in modalità utente, i driver in modalità kernel e i minidriver HID usano per gestire i dispositivi nella classe di configurazione del dispositivo HIDClass.
Come regola generale, le applicazioni in modalità utente possono usare le routine di HidD_Xxx e HidP_Xxx. Tuttavia, i driver in modalità kernel possono chiamare solo routine HidP_Xxx.
I minidriver HID usano solo la routine HidRegisterMinidriver .
Per Windows 8.1 Microsoft ha introdotto la nuova API Windows.Devices.HumanInterfaceDevice che consente di scrivere app Windows che accedono ai dispositivi HID.
L'intestazione definisce IOCTLs che un minidriver HID deve supportare. Solo il driver di classe HID invia questi IOCTLs a un minidriver HID. Le applicazioni in modalità utente e altri driver in modalità kernel possono comunicare solo con le raccolte HID usando le routine di supporto HIDClass e IOCTLs del driver di classe HID.
IOCTR HID Minidriver
Un minidriver HID deve gestire un set di IOCTLs. Solo il driver di classe HID invia questi IOCTLs a un minidriver HID. Le applicazioni in modalità utente e altri driver in modalità kernel possono comunicare solo con le raccolte HID usando le routine di supporto HIDClass e IOCTLs del driver di classe HID.
Argomento | Descrizione |
---|---|
IOCTL_HID_ACTIVATE_DEVICE | La richiesta IOCTL_HID_ACTIVATE_DEVICE attiva un dispositivo HIDClass, che lo rende pronto per le operazioni di I/O. |
IOCTL_HID_DEACTIVATE_DEVICE | La richiesta di IOCTL_HID_DEACTIVATE_DEVICE disattiva un dispositivo HIDClass, che lo causa l'arresto delle operazioni e termina tutte le richieste di I/O in sospeso. |
IOCTL_HID_GET_DEVICE_ATTRIBUTES | La richiesta di IOCTL_HID_GET_DEVICE_ATTRIBUTES ottiene gli attributi di un dispositivo HIDClass in una struttura HID_DEVICE_ATTRIBUTES. |
IOCTL_HID_GET_DEVICE_DESCRIPTOR | La richiesta di IOCTL_HID_GET_DEVICE_DESCRIPTOR ottiene un descrittore HIDClass del dispositivo HID. |
IOCTL_HID_GET_REPORT_DESCRIPTOR | La richiesta di IOCTL_HID_GET_REPORT_DESCRIPTOR ottiene il descrittore del report per un dispositivo HIDClass. |
IOCTL_HID_GET_STRING | La richiesta di IOCTL_HID_GET_STRING ottiene un ID produttore, un ID prodotto o un numero di serie per una raccolta di livello superiore. La stringa recuperata è una stringa di caratteri wide con terminazione NULL in un formato leggibile. |
IOCTL_HID_READ_REPORT | La richiesta di IOCTL_HID_READ_REPORT trasferisce un report di input da un dispositivo HIDClass nel buffer del driver di classe HID. |
IOCTL_HID_WRITE_REPORT | La richiesta IOCTL_HID_WRITE_REPORT invia un report HID a un dispositivo HIDClass. |
IOCTL_UMDF_GET_PHYSICAL_DESCRIPTOR | Il codice di controllo IOCTL_UMDF_GET_PHYSICAL_DESCRIPTOR ottiene il descrittore fisico di un dispositivo HIDClass. |
IOCTL_UMDF_HID_GET_FEATURE | Il codice di controllo IOCTL_UMDF_HID_GET_FEATURE ottiene un report delle funzionalità da un dispositivo HIDClass. |
IOCTL_UMDF_HID_GET_INPUT_REPORT | Il codice di controllo IOCTL_UMDF_HID_GET_INPUT_REPORT restituisce un report di input da un dispositivo HIDClass. |
IOCTL_UMDF_HID_SET_FEATURE | Il codice di controllo IOCTL_UMDF_HID_GET_FEATURE invia un report delle funzionalità a un dispositivo HIDClass. |
IOCTL_UMDF_HID_SET_OUTPUT_REPORT | Il codice di controllo IOCTL_UMDF_HID_SET_OUTPUT_REPORT invia un report di output a una raccolta di primo livello. |
IOCTLs del driver di classe HID
Il driver di classe HID gestisce IOCTLs per supportare le raccolte di livello superiore.
Anche se le applicazioni utente possono comunicare con il driver di classe HID usando HidD_Xxx routine di supporto HIDClass, i driver in modalità kernel devono inviare le richieste di controllo del dispositivo corrispondenti descritte in questa sezione.
I parametri di input e output sono specifici della richiesta.
Al termine di una richiesta, i membri del blocco di stato di I/O vengono impostati come segue:
Il membro Status viene impostato dal driver di classe HID per tutte le richieste gestite.
Come descritto per ogni IOCTL, il membro Information viene impostato dal driver di classe o da un driver di livello inferiore. In genere, quando un driver di livello inferiore trasferisce dati da o a un dispositivo, il driver di livello inferiore imposta Informazioni sul numero di byte trasferiti. Tuttavia, il driver di classe HID potrebbe restituire un valore diverso.
Argomento | Descrizione |
---|---|
IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS | La richiesta di IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS ottiene le dimensioni della coda del report di input per una raccolta di livello superiore. |
IOCTL_GET_PHYSICAL_DESCRIPTOR | La richiesta di IOCTL_GET_PHYSICAL_DESCRIPTOR ottiene il descrittore fisico di una raccolta di livello superiore. |
IOCTL_HID_DEVICERESET_NOTIFICATION | La richiesta di IOCTL_HID_DEVICERESET_NOTIFICATION viene inviata dal driver client HID al driver di classe HID per attendere un evento di reimpostazione avviato dal dispositivo. |
IOCTL_HID_DISABLE_SECURE_READ | La richiesta di IOCTL_HID_DISABLE_SECURE_READ annulla una richiesta di IOCTL_HID_ENABLE_SECURE_READ per una raccolta HID. |
IOCTL_HID_ENABLE_SECURE_READ | La richiesta di IOCTL_HID_ENABLE_SECURE_READ consente una lettura sicura per i file aperti di una raccolta HID. |
IOCTL_HID_ENABLE_WAKE_ON_SX | La richiesta di IOCTL_HID_ENABLE_WAKE_ON_SX viene usata per indicare il requisito per un dispositivo di essere in grado di riattivare dalla sospensione del sistema. |
IOCTL_HID_FLUSH_QUEUE | La IOCTL_HID_FLUSH_QUEUE richiesta dequeue tutti i report di input non riparati da una coda di report di input di primo livello. |
IOCTL_HID_GET_COLLECTION_DESCRIPTOR | La richiesta di IOCTL_HID_GET_COLLECTION_DESCRIPTOR ottiene i dati preparati di una raccolta di primo livello, che il driver di classe HID estratto dal descrittore del report del dispositivo fisico durante l'inizializzazione del dispositivo. |
IOCTL_HID_GET_COLLECTION_INFORMATION | La richiesta di IOCTL_HID_GET_COLLECTION_INFORMATION ottiene una struttura di HID_COLLECTION_INFORMATION HID_COLLECTION_INFORMATION di primo livello. |
IOCTL_HID_GET_DRIVER_CONFIG | La richiesta di IOCTL_HID_GET_DRIVER_CONFIG recupera la configurazione del driver. |
IOCTL_HID_GET_FEATURE | La richiesta di IOCTL_HID_GET_FEATURE restituisce un report di funzionalità associato a una raccolta di livello superiore. |
IOCTL_HID_GET_HARDWARE_ID | La richiesta di IOCTL_HID_GET_HARDWARE_ID ottiene l'ID hardware Plug and Play di una raccolta di livello superiore. |
IOCTL_HID_GET_INDEXED_STRING | La richiesta di IOCTL_HID_GET_INDEXED_STRING ottiene una stringa incorporata specificata da una raccolta di livello superiore. |
IOCTL_HID_GET_INPUT_REPORT | La richiesta di IOCTL_HID_GET_INPUT_REPORT ottiene un report di input da una raccolta di livello superiore. |
IOCTL_HID_GET_MANUFACTURER_STRING | La richiesta di IOCTL_HID_GET_MANUFACTURER_STRING ottiene una stringa incorporata della raccolta di primo livello che identifica il produttore del dispositivo. |
IOCTL_HID_GET_MS_GENRE_DESCRIPTOR | La richiesta di IOCTL_HID_GET_MS_GENRE_DESCRIPTOR viene usata per recuperare il descrittore di genere per il dispositivo. |
IOCTL_HID_GET_POLL_FREQUENCY_MSEC | La richiesta di IOCTL_HID_GET_POLL_FREQUENCY_MSEC ottiene la frequenza di polling corrente, in millisecondi, di una raccolta di livello superiore. |
IOCTL_HID_GET_PRODUCT_STRING | La richiesta di IOCTL_HID_GET_PRODUCT_STRING ottiene una stringa incorporata della raccolta di primo livello che identifica il prodotto del produttore. La stringa recuperata è una stringa di caratteri wide con terminazione NULL in un formato leggibile. Per informazioni generali sui dispositivi HIDClass, vedere Raccolte HID. |
IOCTL_HID_GET_SERIALNUMBER_STRING | La richiesta di IOCTL_HID_GET_SERIALNUMBER_STRING ottiene una stringa incorporata della raccolta di primo livello che identifica il numero di serie del dispositivo. |
IOCTL_HID_SET_DRIVER_CONFIG | La richiesta di IOCTL_HID_SET_DRIVER_CONFIG imposta la configurazione del driver. |
IOCTL_HID_SET_FEATURE | La richiesta di IOCTL_HID_SET_FEATURE invia un report di funzionalità a una raccolta di livello superiore. Per informazioni generali sui dispositivi HIDClass, vedere Raccolte HID. |
IOCTL_HID_SET_OUTPUT_REPORT | La richiesta di IOCTL_HID_SET_OUTPUT_REPORT invia un report di output a una raccolta di livello superiore. |
IOCTL_HID_SET_POLL_FREQUENCY_MSEC | La richiesta di IOCTL_HID_SET_POLL_FREQUENCY_MSEC imposta la frequenza di polling, in millisecondi, per una raccolta di livello superiore. Le applicazioni in modalità utente o i driver in modalità kernel che eseguono letture irregolari e opportunistiche in un dispositivo sottoposto a polling devono fornire un intervallo di polling pari a zero. In questi casi, IOCTL_HID_SET_POLL_FREQUENCY_MSEC non modifica effettivamente la frequenza di polling del dispositivo; ma se i dati del report non sono aggiornati quando viene letto, la lettura viene completata immediatamente con i dati del report più recenti per la raccolta indicata. Se i dati del report non vengono aggiornati immediatamente, senza attendere la scadenza dell'intervallo di polling e la lettura viene completata con i nuovi dati. Se il valore per l'intervallo di polling specificato in IRP non è zero, deve essere >= MIN_POLL_INTERVAL_MSEC e <= MAX_POLL_INTERVAL_MSEC. Il polling può essere limitato se sono presenti più raccolte di livello superiore. Per informazioni generali sui dispositivi HIDClass, vedere Raccolte HID. |
IOCTL_HID_SET_S0_IDLE_TIMEOUT | La richiesta di IOCTL_HID_SET_S0_IDLE_TIMEOUT viene usata da un client per informare il driver della classe HID sul valore di timeout di inattività preferito del client. |
IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS | La richiesta di IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS imposta il numero di buffer per la coda del report di input di una raccolta di livello superiore. Ogni coda di report di input viene implementata come buffer anello. Se una raccolta trasmette i dati al driver di classe HID più velocemente rispetto al driver può leggerlo, alcuni dei dati potrebbero essere persi. Per evitare questo tipo di perdita, è possibile usare una richiesta di IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS per modificare il numero di buffer contenuti nella coda del report di input. Il driver di classe HID richiede almeno due buffer di input. Il numero massimo di buffer di input supportati dal driver di classe HID è 512. Il numero predefinito di buffer di input è 32. Per informazioni generali sui dispositivi HIDClass, vedere Raccolte HID. |
Riservato per l'uso interno del sistema
Questa sezione elenca, in ordine alfabetico, le routine correlate ad HIDClass, le strutture, i tipi di enumerazione e i tipi di dati riservati all'uso interno del sistema.
- DeviceObjectState
- HID_DRIVER_CONFIG
- HID_INTERFACE_HIDPARSE
- HID_INTERFACE_NOTIFY_PNP
- HIDD_CONFIGURATION
- HidD_GetConfiguration
- HidD_GetMsGenreDescriptor
- HidD_SetConfiguration
- HIDP_COLLECTION_DESC
- HIDP_DEVICE_DESC
- HidP_FreeCollectionDescription
- HIDP_GETCOLDESC_DBG
- HIDP_KEYBOARD_DIRECTION
- HIDP_KEYBOARD_MODIFIER_STATE
- HIDP_REPORT_IDS
- HidP_SysPowerCaps
- HidP_SysPowerEvent
- HidP_TranslateUsageAndPagesToI8042ScanCodes
- PHID_STATUS_CHANGE
- PHIDP_INSERT_SCANCODES
- PHIDP_REPORT_DESCRIPTOR
DeviceObjectState
Il tipo di enumerazione DeviceObjectState è riservato per l'uso interno del sistema.
enum DeviceObjectState {
DeviceObjectStarted,
DeviceObjectStopped,
DeviceObjectRemoved
};
Intestazioni dichiarate in Hidclass.h.
HID_DRIVER_CONFIG
La struttura HID_DRIVER_CONFIG è riservata per l'uso interno del sistema.
typedef struct _HID_DRIVER_CONFIG {
ULONG Size;
ULONG RingBufferSize;
} HID_DRIVER_CONFIG, *PHID_DRIVER_CONFIG;
Intestazioni dichiarate in Hidclass.h.
HID_INTERFACE_HIDPARSE
La struttura HID_INTERFACE_HIDPARSE è riservata per l'uso interno del sistema.
typedef struct _HID_INTERFACE_HIDPARSE {
#ifndef __cplusplus
INTERFACE;
#else
INTERFACE i;
#endif
PHIDP_GETCAPS HidpGetCaps;
} HID_INTERFACE_HIDPARSE, *PHID_INTERFACE_HIDPARSE;
Intestazioni dichiarate in Hidclass.h.
HID_INTERFACE_NOTIFY_PNP
La struttura HID_INTERFACE_NOTIFY_PNP è riservata per l'uso interno del sistema.
typedef struct _HID_INTERFACE_NOTIFY_PNP {
#ifndef __cplusplus
INTERFACE;
#else
INTERFACE i;
#endif
PHID_STATUS_CHANGE StatusChangeFn;
PVOID CallbackContext;
} HID_INTERFACE_NOTIFY_PNP, *PHID_INTERFACE_NOTIFY_PNP;
Intestazioni dichiarate in Hidclass.h.
HIDD_CONFIGURATION
La struttura HIDD_CONFIGURATION è riservata per l'uso interno del sistema.
typedef struct _HIDD_CONFIGURATION {
PVOID cookie;
ULONG size;
ULONG RingBufferSize;
} HIDD_CONFIGURATION, *PHIDD_CONFIGURATION;
Intestazioni dichiarate in Hidsdi.h.
HidD_GetConfiguration
La routine HidD_GetConfiguration è riservata per l'uso interno del sistema.
BOOLEAN __stdcall
HidD_GetConfiguration(
IN HANDLE HidDeviceObject,
OUT PHIDD_CONFIGURATION Configuration,
IN ULONG ConfigurationLength
);
Intestazioni dichiarate in Hidsdi.h.
HidD_GetMsGenreDescriptor
La routine HidD_GetMsGenreDescriptor è riservata all'uso interno del sistema.
BOOLEAN __stdcall
HidD_GetMsGenreDescriptor(
IN HANDLE HidDeviceObject,
OUT PVOID Buffer,
IN ULONG BufferLength
);
Intestazioni dichiarate in Hidsdi.h.
HidD_SetConfiguration
La routine HidD_SetConfiguration è riservata all'uso interno del sistema.
BOOLEAN __stdcall
HidD_SetConfiguration(
IN HANDLE HidDeviceObject,
IN PHIDD_CONFIGURATION Configuration,
IN ULONG ConfigurationLength
);
Intestazioni dichiarate in Hidsdi.h.
HIDP_COLLECTION_DESC
La struttura HIDP_COLLECTION_DESC è riservata per l'uso interno del sistema.
typedef struct _HIDP_COLLECTION_DESC {
USAGE UsagePage;
USAGE Usage;
UCHAR CollectionNumber;
UCHAR Reserved [15];
USHORT InputLength;
USHORT OutputLength;
USHORT FeatureLength;
USHORT PreparsedDataLength;
PHIDP_PREPARSED_DATA PreparsedData;
} HIDP_COLLECTION_DESC, *PHIDP_COLLECTION_DESC;
Intestazioni dichiarate in Hidpddi.h.
HIDP_DEVICE_DESC
La struttura HIDP_DEVICE_DESC è riservata per l'uso interno del sistema.
typedef struct _HIDP_DEVICE_DESC {
PHIDP_COLLECTION_DESC CollectionDesc;
ULONG CollectionDescLength;
PHIDP_REPORT_IDS ReportIDs;
ULONG ReportIDsLength;
HIDP_GETCOLDESC_DBG Dbg;
} HIDP_DEVICE_DESC, *PHIDP_DEVICE_DESC;
Intestazioni dichiarate in Hidpddi.h.
HidP_FreeCollectionDescription
La routine HidP_FreeCollectionDescription è riservata per l'uso interno del sistema.
VOID
HidP_FreeCollectionDescription(
IN PHIDP_DEVICE_DESC DeviceDescription
);
Intestazioni dichiarate in Hidpddi.h.
HIDP_GETCOLDESC_DBG
La struttura HIDP_GETCOLDESC_DBG è riservata per l'uso interno del sistema.
typedef struct _HIDP_GETCOLDESC_DBG {
ULONG BreakOffset;
ULONG ErrorCode;
ULONG Args[6];
} HIDP_GETCOLDESC_DBG, *PHIDP_GETCOLDESC_DBG;
Intestazioni dichiarate in Hidpddi.h.
HIDP_KEYBOARD_DIRECTION
Il tipo di enumerazione HIDP_KEYBOARD_DIRECTION è riservato per l'uso interno del sistema.
typedef enum _HIDP_KEYBOARD_DIRECTION {
HidP_Keyboard_Break,
HidP_Keyboard_Make
} HIDP_KEYBOARD_DIRECTION;
Intestazioni dichiarate in Hidpi.h.
HIDP_KEYBOARD_MODIFIER_STATE
La struttura HIDP_KEYBOARD_MODIFIER_STATE è riservata per l'uso interno del sistema.
typedef struct _HIDP_KEYBOARD_MODIFIER_STATE {
union {
struct {
ULONG LeftControl: 1;
ULONG LeftShift: 1;
ULONG LeftAlt: 1;
ULONG LeftGUI: 1;
ULONG RightControl: 1;
ULONG RightShift: 1;
ULONG RightAlt: 1;
ULONG RigthGUI: 1;
ULONG CapsLock: 1;
ULONG ScollLock: 1;
ULONG NumLock: 1;
ULONG Reserved: 21;
};
ULONG ul;
};
} HIDP_KEYBOARD_MODIFIER_STATE, *PHIDP_KEYBOARD_MODIFIER_STATE;
Intestazioni dichiarate in Hidpi.h.
HIDP_REPORT_IDS
La struttura HIDP_REPORT_IDS è riservata per l'uso interno del sistema.
typedef struct _HIDP_REPORT_IDS {
UCHAR ReportID;
UCHAR CollectionNumber;
USHORT InputLength;
USHORT OutputLength;
USHORT FeatureLength;
} HIDP_REPORT_IDS, *PHIDP_REPORT_IDS;
Intestazioni dichiarate in Hidpddi.h.
HidP_SysPowerCaps
La routine HidP_SysPowerCaps è riservata per l'uso interno del sistema.
NTSTATUS
HidP_SysPowerCaps(
IN PHIDP_PREPARSED_DATA Ppd,
OUT PULONG OutputBuffer
);
Intestazioni dichiarate in Hidpddi.h.
HidP_SysPowerEvent
La routine HidP_SysPowerEvent è riservata per l'uso interno del sistema.
NTSTATUS
HidP_SysPowerEvent(
IN PCHAR HidPacket,
IN USHORT HidPacketLength,
IN PHIDP_PREPARSED_DATA Ppd,
OUT PULONG OutputBuffer
);
Intestazioni dichiarate in Hidpddi.h.
HidP_TranslateUsageAndPagesToI8042ScanCodes
La routine HidP_TranslateUsageAndPagesToI8042ScanCodes è riservata per l'uso interno del sistema.
NTSTATUS __stdcall
HidP_TranslateUsageAndPagesToI8042ScanCodes(
IN PUSAGE_AND_PAGE ChangedUsageList,
IN ULONG UsageListLength,
IN HIDP_KEYBOARD_DIRECTION KeyAction,
IN OUT PHIDP_KEYBOARD_MODIFIER_STATE ModifierState,
IN PHIDP_INSERT_SCANCODES InsertCodesProcedure,
IN PVOID InsertCodesContext
);
Intestazioni dichiarate in Hidpi.h.
PHID_STATUS_CHANGE
La routine PHID_STATUS_CHANGE è riservata all'uso interno del sistema.
typedef VOID (*PHID_STATUS_CHANGE)(
PVOID Context,
enum DeviceObjectState State
);
Intestazioni dichiarate in Hidclass.h.
PHIDP_INSERT_SCANCODES
La routine PHIDP_INSERT_SCANCODES è riservata per l'uso interno del sistema.
typedef BOOLEAN (*PHIDP_INSERT_SCANCODES)(
IN PVOID Context,
IN PCHAR NewScanCodes,
IN ULONG Length
);
Intestazioni dichiarate in Hidpi.h.
PHIDP_REPORT_DESCRIPTOR
Il tipo di dati PHIDP_REPORT_DESCRIPTOR è riservato per l'uso interno del sistema.
typedef PUCHAR PHIDP_REPORT_DESCRIPTOR;
Intestazioni dichiarate in Hidpi.h.
Funzioni di callback
Titolo | Descrizione |
---|---|
EVT_VHF_ASYNC_OPERATION | Il driver di origine HID implementa questo callback di eventi se vuole supportare una delle quattro operazioni asincrone per ottenere e impostare report HID. |
EVT_VHF_CLEANUP | Il driver di origine HID implementa questo callback di eventi per liberare risorse che potrebbero essere il driver allocato al dispositivo HID virtuale. |
EVT_VHF_READY_FOR_NEXT_READ_REPORT | Il driver di origine HID implementa questa funzione di callback degli eventi per usare lo schema di buffering per i report di input HID e vuole ricevere una notifica quando il report successivo può essere inviato a VHF. |
PHIDP_GETCAPS | La routine HidP_GetCaps restituisce la struttura di HIDP_CAPS di una raccolta di primo livello. |
PI8042_ISR_WRITE_PORT | La routine di callback tipizzata PI8042_ISR_WRITE_PORT scrive i dati in una porta i8042. I8042prt fornisce questo callback. |
PI8042_KEYBOARD_INITIALIZATION_ROUTINE | Una routine di callback tipizzata PI8042_KEYBOARD_INITIALIZATION_ROUTINE integra l'inizializzazione predefinita di un dispositivo da tastiera di I8042prt. |
PI8042_KEYBOARD_ISR | Una routine di callback tipizzata PI8042_KEYBOARD_ISR consente di personalizzare l'operazione dell'ISR della tastiera I8042prt. |
PI8042_MOUSE_ISR | Una routine di callback tipizzata PI8042_MOUSE_ISR consente di personalizzare l'operazione dell'ISR del mouse I8042prt. |
PI8042_QUEUE_PACKET | La routine di callback tipizzata PI8042_QUEUE_PACKET accoda un pacchetto di dati di input per l'elaborazione da parte del DPC ISR di una tastiera o di un dispositivo mouse. I8042prt fornisce questo callback. |
PI8042_SYNCH_READ_PORT | La routine di callback tipizzata PI8042_SYNCH_READ_PORT esegue una lettura sincronizzata da una porta i8042. I8042prt fornisce questo callback. |
PI8042_SYNCH_WRITE_PORT | La routine di callback tipizzata PI8042_SYNCH_READ_PORT esegue una scrittura sincronizzata su una porta i8042. I8042prt fornisce questa routine. |
PSERVICE_CALLBACK_ROUTINE | Un driver di funzione chiama il callback del servizio di classe nella routine di completamento dell'invio ISR. Il callback del servizio di classe trasferisce i dati di input dal buffer dei dati di input di un dispositivo alla coda dei dati della classe. |
Codici di controllo di I/O
Titolo | Descrizione |
---|---|
IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS IOCTL | La richiesta di IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS ottiene le dimensioni della coda del report di input per una raccolta di livello superiore. |
IOCTL_GET_PHYSICAL_DESCRIPTOR IOCTL | La richiesta di IOCTL_GET_PHYSICAL_DESCRIPTOR ottiene il descrittore fisico di una raccolta di primo livello. Per un minidriver, questo descrittore è il descrittore del dispositivo HIDClass. |
IOCTL_HID_ACTIVATE_DEVICE IOCTL | La richiesta di IOCTL_HID_ACTIVATE_DEVICE attiva un dispositivo HIDClass, che lo rende pronto per le operazioni di I/O. |
IOCTL_HID_DEACTIVATE_DEVICE IOCTL | La richiesta di IOCTL_HID_DEACTIVATE_DEVICE disattiva un dispositivo HIDClass, che lo causa l'arresto delle operazioni e l'interruzione di tutte le richieste di I/O in sospeso. |
IOCTL_HID_DEVICERESET_NOTIFICATION IOCTL | La richiesta di IOCTL_HID_DEVICERESET_NOTIFICATION viene inviata dal driver client HID al driver di classe HID per attendere un evento di reimpostazione avviato dal dispositivo. |
IOCTL_HID_DISABLE_SECURE_READ IOCTL | La richiesta di IOCTL_HID_DISABLE_SECURE_READ annulla una richiesta di IOCTL_HID_ENABLE_SECURE_READ per una raccolta HID. |
IOCTL_HID_ENABLE_SECURE_READ IOCTL | La richiesta di IOCTL_HID_ENABLE_SECURE_READ consente una lettura sicura per i file aperti di una raccolta HID. |
IOCTL_HID_ENABLE_WAKE_ON_SX IOCTL | La richiesta di IOCTL_HID_ENABLE_WAKE_ON_SX viene usata per indicare il requisito per consentire a un dispositivo di riattivare la sospensione del sistema. |
IOCTL_HID_FLUSH_QUEUE IOCTL | La richiesta di IOCTL_HID_FLUSH_QUEUE annulla la coda di tutti i report di input non verificati da una coda di report di input di una raccolta di livello superiore. |
IOCTL_HID_GET_COLLECTION_DESCRIPTOR IOCTL | La richiesta di IOCTL_HID_GET_COLLECTION_DESCRIPTOR ottiene i dati pronti di una raccolta di livello superiore, che il driver di classe HID estratto dal descrittore di report del dispositivo fisico durante l'inizializzazione del dispositivo. |
IOCTL_HID_GET_COLLECTION_INFORMATION IOCTL | La richiesta di IOCTL_HID_GET_COLLECTION_INFORMATION ottiene la struttura di HID_COLLECTION_INFORMATION di una raccolta di livello superiore. |
IOCTL_HID_GET_DEVICE_ATTRIBUTES IOCTL | La richiesta di IOCTL_HID_GET_DEVICE_ATTRIBUTES ottiene gli attributi di un dispositivo HIDClass in una struttura HID_DEVICE_ATTRIBUTES. |
IOCTL_HID_GET_DEVICE_DESCRIPTOR IOCTL | La richiesta di IOCTL_HID_GET_DEVICE_DESCRIPTOR ottiene il descrittore HIDClass di un dispositivo HID. |
IOCTL_HID_GET_DRIVER_CONFIG IOCTL | La richiesta di IOCTL_HID_GET_DRIVER_CONFIG recupera la configurazione del driver. |
IOCTL_HID_GET_FEATURE IOCTL | La richiesta di IOCTL_HID_GET_FEATURE restituisce un report delle funzionalità associato a una raccolta di primo livello. |
IOCTL_HID_GET_HARDWARE_ID IOCTL | La richiesta di IOCTL_HID_GET_HARDWARE_ID ottiene l'ID hardware Plug and Play di una raccolta di livello superiore. |
IOCTL_HID_GET_INDEXED_STRING IOCTL | La richiesta di IOCTL_HID_GET_INDEXED_STRING ottiene una stringa incorporata specificata da una raccolta di livello superiore. |
IOCTL_HID_GET_INPUT_REPORT IOCTL | La richiesta di IOCTL_HID_GET_INPUT_REPORT ottiene un report di input da una raccolta di primo livello. |
IOCTL_HID_GET_MANUFACTURER_STRING IOCTL | La richiesta di IOCTL_HID_GET_MANUFACTURER_STRING ottiene una stringa incorporata della raccolta di primo livello che identifica il produttore del dispositivo. |
IOCTL_HID_GET_MS_GENRE_DESCRIPTOR IOCTL | La richiesta di IOCTL_HID_GET_MS_GENRE_DESCRIPTOR viene usata per recuperare il descrittore di genere per il dispositivo. |
IOCTL_HID_GET_POLL_FREQUENCY_MSEC IOCTL | La richiesta di IOCTL_HID_GET_POLL_FREQUENCY_MSEC ottiene la frequenza di polling corrente, in millisecondi, di una raccolta di livello superiore. |
IOCTL_HID_GET_PRODUCT_STRING IOCTL | La richiesta di IOCTL_HID_GET_PRODUCT_STRING ottiene una stringa incorporata della raccolta di primo livello che identifica il prodotto del produttore. La stringa recuperata è una stringa di caratteri wide con terminazione NULL in un formato leggibile. |
IOCTL_HID_GET_REPORT_DESCRIPTOR IOCTL | La richiesta di IOCTL_HID_GET_REPORT_DESCRIPTOR ottiene il descrittore del report per un dispositivo HIDClass. |
IOCTL_HID_GET_SERIALNUMBER_STRING IOCTL | La richiesta di IOCTL_HID_GET_SERIALNUMBER_STRING ottiene una stringa incorporata della raccolta di primo livello che identifica il numero di serie del dispositivo. |
IOCTL_HID_GET_STRING IOCTL | La richiesta di IOCTL_HID_GET_STRING ottiene un ID produttore, un ID prodotto o un numero di serie per una raccolta di livello superiore. La stringa recuperata è una stringa di caratteri wide con terminazione NULL in un formato leggibile. |
IOCTL_HID_READ_REPORT IOCTL | La richiesta di IOCTL_HID_READ_REPORT trasferisce un report di input da un dispositivo HIDClass nel buffer del driver di classe HID. |
IOCTL_HID_SEND_IDLE_NOTIFICATION_REQUEST IOCTL | Il codice di controllo IOCTL_HID_SEND_IDLE_NOTIFICATION_REQUEST è IOCTL della richiesta di notifica inattiva che HIDClass invia ai mini driver HID, ad esempio HIDUSB, per informare il driver del bus che il dispositivo è ora inattivo. |
IOCTL_HID_SET_DRIVER_CONFIG IOCTL | La richiesta di IOCTL_HID_SET_DRIVER_CONFIG imposta la configurazione del driver. |
IOCTL_HID_SET_FEATURE IOCTL | La richiesta di IOCTL_HID_SET_FEATURE invia un report di funzionalità a una raccolta di livello superiore. |
IOCTL_HID_SET_OUTPUT_REPORT IOCTL | La richiesta di IOCTL_HID_SET_OUTPUT_REPORT invia un report di output a una raccolta di livello superiore. |
IOCTL_HID_SET_POLL_FREQUENCY_MSEC IOCTL | La richiesta di IOCTL_HID_SET_POLL_FREQUENCY_MSEC imposta la frequenza di polling, in millisecondi, per una raccolta di livello superiore. |
IOCTL_HID_SET_S0_IDLE_TIMEOUT IOCTL | La richiesta di IOCTL_HID_SET_S0_IDLE_TIMEOUT viene usata da un client per informare il driver della classe HID sul valore di timeout di inattività preferito del client. |
IOCTL_HID_WRITE_REPORT IOCTL | La richiesta IOCTL_HID_WRITE_REPORT invia un report HID a un dispositivo HIDClass. |
IOCTL_INTERNAL_I8042_CONTROLLER_WRITE_BUFFER IOCTL | La richiesta di IOCTL_INTERNAL_I8042_CONTROLLER_WRITE_BUFFER non è supportata. |
IOCTL_INTERNAL_I8042_HOOK_KEYBOARD IOCTL | La richiesta di IOCTL_INTERNAL_I8042_HOOK_KEYBOARD esegue le operazioni seguenti |
IOCTL_INTERNAL_I8042_HOOK_MOUSE IOCTL | La richiesta di IOCTL_INTERNAL_I8042_HOOK_MOUSE aggiunge una routine di callback ISR al mouse ISR I8042prt. |
IOCTL_INTERNAL_I8042_KEYBOARD_START_INFORMATION IOCTL | La richiesta di IOCTL_INTERNAL_I8042_KEYBOARD_START_INFORMATION passa un puntatore a un oggetto di interruzione della tastiera. |
IOCTL_INTERNAL_I8042_KEYBOARD_WRITE_BUFFER IOCTL | La richiesta di IOCTL_INTERNAL_I8042_KEYBOARD_WRITE_BUFFER scrive i dati nel controller di porta i8042 per controllare l'operazione di un dispositivo da tastiera. |
IOCTL_INTERNAL_I8042_MOUSE_START_INFORMATION IOCTL | La richiesta di IOCTL_INTERNAL_I8042_MOUSE_START_INFORMATION passa un puntatore a un oggetto di interruzione del mouse. |
IOCTL_INTERNAL_I8042_MOUSE_WRITE_BUFFER IOCTL | La richiesta di IOCTL_INTERNAL_I8042_MOUSE_WRITE_BUFFER scrive i dati nel controller di porta i8042 per controllare l'operazione di un dispositivo del mouse. |
IOCTL_INTERNAL_KEYBOARD_CONNECT IOCTL | La richiesta di IOCTL_INTERNAL_KEYBOARD_CONNECT connette il servizio Kbdclass al dispositivo da tastiera. |
IOCTL_INTERNAL_KEYBOARD_DISCONNECT IOCTL | La richiesta di IOCTL_INTERNAL_KEYBOARD_DISCONNECT viene completata con lo stato di STATUS_NOT_IMPLEMENTED. Si noti che una tastiera Plug and Play può essere aggiunta o rimossa dal gestore Plug and Play. |
IOCTL_INTERNAL_MOUSE_CONNECT IOCTL | La richiesta IOCTL_INTERNAL_MOUSE_CONNECT connette il servizio Mouclass a un dispositivo mouse. |
IOCTL_INTERNAL_MOUSE_DISCONNECT IOCTL | La richiesta di IOCTL_INTERNAL_MOUSE_DISCONNECT viene completata da Moufiltr con uno stato di errore di STATUS_NOT_IMPLEMENTED. |
IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS IOCTL | La richiesta di IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS imposta il numero di buffer per la coda del report di input di una raccolta di livello superiore. |
IOCTL_UMDF_GET_PHYSICAL_DESCRIPTOR IOCTL | Il codice di controllo IOCTL_UMDF_GET_PHYSICAL_DESCRIPTOR ottiene il descrittore fisico di un dispositivo HIDClass. |
IOCTL_UMDF_HID_GET_FEATURE IOCTL | Il codice di controllo IOCTL_UMDF_HID_GET_FEATURE ottiene un report delle funzionalità da un dispositivo HIDClass. |
IOCTL_UMDF_HID_GET_INPUT_REPORT IOCTL | Il codice di controllo IOCTL_UMDF_HID_GET_INPUT_REPORT restituisce un report di input da un dispositivo HIDClass. |
IOCTL_UMDF_HID_SET_FEATURE IOCTL | Il codice di controllo IOCTL_UMDF_HID_GET_FEATURE invia un report delle funzionalità a un dispositivo HIDClass. |
IOCTL_UMDF_HID_SET_OUTPUT_REPORT IOCTL | Il codice di controllo IOCTL_UMDF_HID_SET_OUTPUT_REPORT invia un report di output a una raccolta di primo livello. |
IOCTL
IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS La richiesta di IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS ottiene le dimensioni della coda del report di input per una raccolta di livello superiore. |
IOCTL_GET_PHYSICAL_DESCRIPTOR La richiesta di IOCTL_GET_PHYSICAL_DESCRIPTOR ottiene il descrittore fisico di una raccolta di livello superiore. Per un minidriver, questo descrittore è il descrittore del dispositivo HIDClass. |
IOCTL_HID_ACTIVATE_DEVICE La richiesta IOCTL_HID_ACTIVATE_DEVICE attiva un dispositivo HIDClass, che lo rende pronto per le operazioni di I/O. |
IOCTL_HID_DEACTIVATE_DEVICE La richiesta di IOCTL_HID_DEACTIVATE_DEVICE disattiva un dispositivo HIDClass, che lo causa l'arresto delle operazioni e termina tutte le richieste di I/O in sospeso. |
IOCTL_HID_DEVICERESET_NOTIFICATION La richiesta di IOCTL_HID_DEVICERESET_NOTIFICATION viene inviata dal driver client HID al driver di classe HID per attendere un evento di reimpostazione avviato dal dispositivo. |
IOCTL_HID_DISABLE_SECURE_READ La richiesta di IOCTL_HID_DISABLE_SECURE_READ annulla una richiesta di IOCTL_HID_ENABLE_SECURE_READ per una raccolta HID. |
IOCTL_HID_ENABLE_SECURE_READ La richiesta di IOCTL_HID_ENABLE_SECURE_READ consente una lettura sicura per i file aperti di una raccolta HID. |
IOCTL_HID_ENABLE_WAKE_ON_SX La richiesta di IOCTL_HID_ENABLE_WAKE_ON_SX viene usata per indicare il requisito per un dispositivo di essere in grado di riattivare dalla sospensione del sistema. |
IOCTL_HID_FLUSH_QUEUE La IOCTL_HID_FLUSH_QUEUE richiesta dequeue tutti i report di input non riparati da una coda di report di input di primo livello. |
IOCTL_HID_GET_COLLECTION_DESCRIPTOR La richiesta di IOCTL_HID_GET_COLLECTION_DESCRIPTOR ottiene i dati preparati di una raccolta di primo livello, che il driver di classe HID estratto dal descrittore del report del dispositivo fisico durante l'inizializzazione del dispositivo. |
IOCTL_HID_GET_COLLECTION_INFORMATION La richiesta di IOCTL_HID_GET_COLLECTION_INFORMATION ottiene una struttura di HID_COLLECTION_INFORMATION HID_COLLECTION_INFORMATION di primo livello. |
IOCTL_HID_GET_DEVICE_ATTRIBUTES La richiesta di IOCTL_HID_GET_DEVICE_ATTRIBUTES ottiene gli attributi di un dispositivo HIDClass in una struttura HID_DEVICE_ATTRIBUTES. |
IOCTL_HID_GET_DEVICE_DESCRIPTOR La richiesta di IOCTL_HID_GET_DEVICE_DESCRIPTOR ottiene un descrittore HIDClass del dispositivo HID. |
IOCTL_HID_GET_DRIVER_CONFIG La richiesta di IOCTL_HID_GET_DRIVER_CONFIG recupera la configurazione del driver. |
IOCTL_HID_GET_FEATURE La richiesta di IOCTL_HID_GET_FEATURE restituisce un report di funzionalità associato a una raccolta di livello superiore. |
IOCTL_HID_GET_HARDWARE_ID La richiesta di IOCTL_HID_GET_HARDWARE_ID ottiene l'ID hardware Plug and Play di una raccolta di livello superiore. |
IOCTL_HID_GET_INDEXED_STRING La richiesta di IOCTL_HID_GET_INDEXED_STRING ottiene una stringa incorporata specificata da una raccolta di livello superiore. |
IOCTL_HID_GET_INPUT_REPORT La richiesta di IOCTL_HID_GET_INPUT_REPORT ottiene un report di input da una raccolta di livello superiore. |
IOCTL_HID_GET_MANUFACTURER_STRING La richiesta di IOCTL_HID_GET_MANUFACTURER_STRING ottiene una stringa incorporata della raccolta di primo livello che identifica il produttore del dispositivo. |
IOCTL_HID_GET_MS_GENRE_DESCRIPTOR La richiesta di IOCTL_HID_GET_MS_GENRE_DESCRIPTOR viene usata per recuperare il descrittore di genere per il dispositivo. |
IOCTL_HID_GET_POLL_FREQUENCY_MSEC La richiesta di IOCTL_HID_GET_POLL_FREQUENCY_MSEC ottiene la frequenza di polling corrente, in millisecondi, di una raccolta di livello superiore. |
IOCTL_HID_GET_PRODUCT_STRING La richiesta di IOCTL_HID_GET_PRODUCT_STRING ottiene una stringa incorporata della raccolta di primo livello che identifica il prodotto del produttore. La stringa recuperata è una stringa di caratteri wide con terminazione NULL in un formato leggibile. |
IOCTL_HID_GET_REPORT_DESCRIPTOR La richiesta di IOCTL_HID_GET_REPORT_DESCRIPTOR ottiene il descrittore del report per un dispositivo HIDClass. |
IOCTL_HID_GET_SERIALNUMBER_STRING La richiesta di IOCTL_HID_GET_SERIALNUMBER_STRING ottiene una stringa incorporata della raccolta di primo livello che identifica il numero di serie del dispositivo. |
IOCTL_HID_GET_STRING La richiesta di IOCTL_HID_GET_STRING ottiene un ID produttore, un ID prodotto o un numero di serie per una raccolta di livello superiore. La stringa recuperata è una stringa di caratteri wide con terminazione NULL in un formato leggibile. |
IOCTL_HID_READ_REPORT La richiesta di IOCTL_HID_READ_REPORT trasferisce un report di input da un dispositivo HIDClass nel buffer del driver di classe HID. |
IOCTL_HID_SEND_IDLE_NOTIFICATION_REQUEST Il codice di controllo IOCTL_HID_SEND_IDLE_NOTIFICATION_REQUEST è IOCTL della richiesta di notifica inattiva che HIDClass invia ai mini driver HID, ad esempio HIDUSB, per informare il driver del bus che il dispositivo è ora inattivo. |
IOCTL_HID_SET_DRIVER_CONFIG La richiesta di IOCTL_HID_SET_DRIVER_CONFIG imposta la configurazione del driver. |
IOCTL_HID_SET_FEATURE La richiesta di IOCTL_HID_SET_FEATURE invia un report di funzionalità a una raccolta di livello superiore. |
IOCTL_HID_SET_OUTPUT_REPORT La richiesta di IOCTL_HID_SET_OUTPUT_REPORT invia un report di output a una raccolta di livello superiore. |
IOCTL_HID_SET_POLL_FREQUENCY_MSEC La richiesta di IOCTL_HID_SET_POLL_FREQUENCY_MSEC imposta la frequenza di polling, in millisecondi, per una raccolta di livello superiore. |
IOCTL_HID_SET_S0_IDLE_TIMEOUT La richiesta di IOCTL_HID_SET_S0_IDLE_TIMEOUT viene usata da un client per informare il driver della classe HID sul valore di timeout di inattività preferito del client. |
IOCTL_HID_WRITE_REPORT La richiesta IOCTL_HID_WRITE_REPORT invia un report HID a un dispositivo HIDClass. |
IOCTL_INTERNAL_I8042_CONTROLLER_WRITE_BUFFER La richiesta di IOCTL_INTERNAL_I8042_CONTROLLER_WRITE_BUFFER non è supportata. |
IOCTL_INTERNAL_I8042_HOOK_KEYBOARD La richiesta di IOCTL_INTERNAL_I8042_HOOK_KEYBOARD esegue la procedura seguente:Aggiunge una routine di callback inizializzazione alla routine di inizializzazione della tastiera I8042prtAggiunge una routine di callback ISR alla tastiera I8042prt ISRThe inizializzazione e i callback ISR sono facoltativi e vengono forniti da un driver di filtro di livello superiore per un dispositivo da tastiera PS/2. Dopo che I8042prt riceve una richiesta di IOCTL_INTERNAL_KEYBOARD_CONNECT, invia una richiesta sincrona IOCTL_INTERNAL_I8042_HOOK_KEYBOARD alla parte superiore dello stack di dispositivi da tastiera. Dopo che Kbfiltr riceve la richiesta della tastiera di hook, Kbfiltr filtra la richiesta nel modo seguente:Salva le informazioni di livello superiore passate a Kbfiltr, che include il contesto di un oggetto dispositivo di livello superiore, un puntatore a un callback di inizializzazione e un puntatore a un callback ISRReplaces le informazioni di livello superiore con i propriSaves il contesto di I8042prt e puntatori ai callback che il callback di Kbfiltr ISR può usare Per altre informazioni su questa richiesta e sui callback, vedere gli argomenti seguenti:I8042prt Callback RoutinesKbfiltr Callback Routines. |
IOCTL_INTERNAL_I8042_HOOK_MOUSE La richiesta di IOCTL_INTERNAL_I8042_HOOK_MOUSE aggiunge una routine di callback ISR al mouse ISR I8042prt. |
IOCTL_INTERNAL_I8042_KEYBOARD_START_INFORMATION La richiesta di IOCTL_INTERNAL_I8042_KEYBOARD_START_INFORMATION passa un puntatore a un oggetto di interruzione della tastiera. |
IOCTL_INTERNAL_I8042_KEYBOARD_WRITE_BUFFER La richiesta di IOCTL_INTERNAL_I8042_KEYBOARD_WRITE_BUFFER scrive i dati nel controller di porta i8042 per controllare l'operazione di un dispositivo da tastiera. |
IOCTL_INTERNAL_I8042_MOUSE_START_INFORMATION La richiesta di IOCTL_INTERNAL_I8042_MOUSE_START_INFORMATION passa un puntatore a un oggetto di interruzione del mouse. |
IOCTL_INTERNAL_I8042_MOUSE_WRITE_BUFFER La richiesta di IOCTL_INTERNAL_I8042_MOUSE_WRITE_BUFFER scrive i dati nel controller di porta i8042 per controllare l'operazione di un dispositivo del mouse. |
IOCTL_INTERNAL_KEYBOARD_CONNECT La richiesta di IOCTL_INTERNAL_KEYBOARD_CONNECT connette il servizio Kbdclass al dispositivo da tastiera. |
IOCTL_INTERNAL_KEYBOARD_DISCONNECT La richiesta di IOCTL_INTERNAL_KEYBOARD_DISCONNECT viene completata con lo stato di STATUS_NOT_IMPLEMENTED. Si noti che una tastiera Plug and Play può essere aggiunta o rimossa dal gestore Plug and Play. |
IOCTL_INTERNAL_MOUSE_CONNECT La richiesta IOCTL_INTERNAL_MOUSE_CONNECT connette il servizio Mouclass a un dispositivo mouse. |
IOCTL_INTERNAL_MOUSE_DISCONNECT La richiesta di IOCTL_INTERNAL_MOUSE_DISCONNECT viene completata da Moufiltr con uno stato di errore di STATUS_NOT_IMPLEMENTED. |
IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS La richiesta di IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS imposta il numero di buffer per la coda del report di input di una raccolta di livello superiore. |
IOCTL_UMDF_GET_PHYSICAL_DESCRIPTOR Il codice di controllo IOCTL_UMDF_GET_PHYSICAL_DESCRIPTOR ottiene il descrittore fisico di un dispositivo HIDClass. |
IOCTL_UMDF_HID_GET_FEATURE Il codice di controllo IOCTL_UMDF_HID_GET_FEATURE ottiene un report delle funzionalità da un dispositivo HIDClass. |
IOCTL_UMDF_HID_GET_INPUT_REPORT Il codice di controllo IOCTL_UMDF_HID_GET_INPUT_REPORT restituisce un report di input da un dispositivo HIDClass. |
IOCTL_UMDF_HID_SET_FEATURE Il codice di controllo IOCTL_UMDF_HID_GET_FEATURE invia un report delle funzionalità a un dispositivo HIDClass. |
IOCTL_UMDF_HID_SET_OUTPUT_REPORT Il codice di controllo IOCTL_UMDF_HID_SET_OUTPUT_REPORT invia un report di output a una raccolta di primo livello. |
Enumerazioni
HIDP_REPORT_TYPE Il tipo di enumerazione HIDP_REPORT_TYPE viene usato per specificare un tipo di report HID. |
KEYBOARD_SCAN_STATE Il tipo di enumerazione KEYBOARD_SCAN_STATE indica lo stato di analisi di un byte di input da una tastiera. |
MOUSE_STATE Il tipo di enumerazione MOUSE_STATE identifica lo stato corrente dell'input da un mouse. |
Funzioni
EVT_HIDSPICX_NOTIFY_POWERDOWN Altre informazioni su: EVT_HIDSPICX_NOTIFY_POWERDOWN |
EVT_HIDSPICX_RESETDEVICE Altre informazioni su: EVT_HIDSPICX_RESETDEVICE |
EVT_VHF_ASYNC_OPERATION Il driver di origine HID implementa questo callback dell'evento se vuole supportare una delle quattro operazioni asincrone per ottenere e impostare i report HID. |
EVT_VHF_CLEANUP Il driver di origine HID implementa questo callback evento per liberare risorse che potrebbero essere allocati al dispositivo HID virtuale. |
EVT_VHF_READY_FOR_NEXT_READ_REPORT Il driver di origine HID implementa questa funzione di chiamata all'evento per usare lo schema di buffer per i report di input HID e vuole ricevere una notifica quando il report successivo può essere inviato a VHF. |
HidD_FlushQueue La routine HidD_FlushQueue elimina tutti i report di input in sospeso in una coda di input di primo livello. |
HidD_FreePreparsedData La routine HidD_FreePreparsedData rilascia le risorse assegnate dal driver di classe HID per contenere i dati preparati di una raccolta di livello superiore. |
HidD_GetAttributes La routine HidD_GetAttributes restituisce gli attributi di una raccolta di livello superiore specificata. |
HidD_GetFeature La routine HidD_GetFeature restituisce un report delle funzionalità da una raccolta di livello superiore specificata. |
HidD_GetHidGuid La routine HidD_GetHidGuid restituisce l'interfaccia del dispositivoGUID per i dispositivi HIDClass. |
HidD_GetIndexedString La routine HidD_GetIndexedString restituisce una stringa incorporata specificata da una raccolta di livello superiore. |
HidD_GetInputReport La routine HidD_GetInputReport restituisce report di input da una raccolta di livello superiore. |
HidD_GetManufacturerString La routine HidD_GetManufacturerString restituisce una stringa incorporata della raccolta di primo livello che identifica il produttore. |
HidD_GetNumInputBuffers La routine HidD_GetNumInputBuffers restituisce le dimensioni correnti, in numero di report, del buffer dell'anello usato dal driver della classe HID per accodare i report di input da una raccolta di livello superiore specificata. |
HidD_GetPhysicalDescriptor La routine HidD_GetPhysicalDescriptor restituisce la stringa incorporata di una raccolta di primo livello che identifica il dispositivo fisico della raccolta. |
HidD_GetPreparsedData La routine HidD_GetPreparsedData restituisce i dati preparati di una raccolta di primo livello. |
HidD_GetProductString La routine HidD_GetProductString restituisce la stringa incorporata di una raccolta di primo livello che identifica il prodotto del produttore. |
HidD_GetSerialNumberString La routine HidD_GetSerialNumberString restituisce la stringa incorporata di una raccolta di primo livello che identifica il numero di serie del dispositivo fisico della raccolta. |
HidD_SetFeature La routine HidD_SetFeature invia un report delle funzionalità a una raccolta di livello superiore. |
HidD_SetNumInputBuffers La routine HidD_SetNumInputBuffers imposta il numero massimo di report di input che il buffer dell'anello del driver della classe HID può contenere per una raccolta di livello superiore specificata. |
HidD_SetOutputReport La routine HidD_SetOutputReport invia un report di output a una raccolta di livello superiore. |
HidP_GetButtonArray HidP_GetButtonArray restituisce una matrice di strutture HIDP_BUTTON_ARRAY_DATA per il report specificato. |
HidP_GetButtonCaps La routine HidP_GetButtonCaps restituisce una matrice di funzionalità del pulsante che descrive tutti i pulsanti di controllo HID in una raccolta di livello superiore per un tipo specificato di report HID. |
HidP_GetButtons La macro HidP_GetButtons è un alias mnemonic per la funzione HHidP_GetUsages. |
HidP_GetButtonsEx La macro HidP_GetButtonsEx è un alias mnemonic per la funzione HidP_GetUsagesEx. |
HidP_GetCaps La routine HidP_GetCaps restituisce una struttura di HIDP_CAPS della raccolta di primo livello. Questa routine è in hidpi.h. |
HidP_GetCollectionDescription Riempie un blocco di descrizione del dispositivo con la descrizione della raccolta e le informazioni relative all'ID report corrispondente per il descrittore di report specificato. |
HidP_GetData La routine HidP_GetData restituisce, per un report specificato, una matrice di strutture HIDP_DATA che identificano gli indici di dati di tutti i pulsanti di controllo HID attualmente impostati su ON (1) e gli indici di dati e i dati associati a tutti i valori di controllo HID. |
HidP_GetExtendedAttributes La routine HidP_GetExtendedAttributes restituisce gli attributi estesi di un controllo HID. |
HidP_GetLinkCollectionNodes La routine HidP_GetLinkCollectionNodes restituisce una matrice di raccolta di collegamenti di primo livello. |
HidP_GetScaledUsageValue La routine HidP_GetScaledUsageValue restituisce il risultato firmato e ridimensionato di un valore di controllo HID estratto da un report HID. |
HidP_GetSpecificButtonCaps La routine HidP_GetSpecificButtonCaps restituisce una matrice di funzionalità del pulsante che descrive tutti i pulsanti di controllo HID in una raccolta di livello superiore che soddisfa i criteri di selezione specificati. |
HidP_GetSpecificValueCaps La routine HidP_GetSpecificValueCaps restituisce una matrice di funzionalità del valore che descrive tutti i valori di controllo HID che soddisfano i criteri di selezione specificati. |
HidP_GetUsages La routine HidP_GetUsages restituisce un elenco di tutti gli usi del pulsante di controllo HID presenti in una pagina di utilizzo specificata e vengono impostati su ON in un report HID. |
HidP_GetUsagesEx La routine HidP_GetUsagesEx restituisce un elenco di tutti gli usi del pulsante di controllo HID impostati su ON in un report HID. |
HidP_GetUsageValue La routine HidP_GetUsageValue estrae i dati associati a un valore di controllo HID corrispondente ai criteri di selezione in un report HID. |
HidP_GetUsageValueArray La routine HidP_GetUsageValueArray estrae i dati associati a una matrice di valori di utilizzo del controllo HID da un report HID. |
HidP_GetValueCaps La routine HidP_GetValueCaps restituisce una matrice di funzionalità del valore che descrive tutti i valori di controllo HID in una raccolta di livello superiore per un tipo specificato di report HID. |
HidP_GetVersion La funzione HidP_GetVersion è un'implementazione di sola intestazione che restituisce la versione dell'API HID. |
HidP_InitializeReportForID La routine HidP_InitializeReportForID inizializza un report HID. |
HidP_MaxDataListLength La routine HidP_MaxDataListLength restituisce il numero massimo di strutture HIDP_DATA che HidP_GetData possono restituire per un tipo specificato di report HID e una raccolta di livello superiore specificata. |
HidP_MaxUsageListLength La routine HidP_MaxUsageListLength restituisce il numero massimo di utilizzi HID che HidP_GetUsages possono restituire per un tipo specificato di report HID e una raccolta di livello superiore specificata. |
HidP_SetButtonArray La funzione HidP_SetButtonArray imposta lo stato dei pulsanti tramite una matrice di strutture HIDP_BUTTON_ARRAY_DATA. |
HidP_SetButtons La macro HidP_SetButtons è un alias mnemonic per la funzione HidP_SetUsages. |
HidP_SetData La routine HidP_SetData imposta un set specificato di pulsanti di controllo HID e utilizzo dei valori in un report HID. |
HidP_SetScaledUsageValue La routine HidP_SetScaledUsageValue converte un numero fisico firmato e ridimensionato in un valore logico di utilizzo HID e imposta il valore di utilizzo in un report HID specificato. |
HidP_SetUsages La routine HidP_SetUsages imposta i pulsanti di controllo HID specificati ON (1) in un report HID. |
HidP_SetUsageValue La routine HidP_SetUsageValue imposta un valore di controllo HID in un report HID specificato. |
HidP_SetUsageValueArray La routine HidP_SetUsageValueArray imposta una matrice di valori di utilizzo del controllo HID in un report HID specificato. |
HidP_TranslateUsagesToI8042ScanCodes La routine HidP_TranslateUsagesToI8042ScanCodes esegue il mapping di un elenco di utilizzi HID nella pagina di utilizzo HID_USAGE_PAGE_KEYBOARD ai rispettivi codici di analisi PS/2 (Set di codice di analisi 1). |
HidP_UnsetButtons La macro HidP_UnsetButtons è un alias mnemonic per la funzione HidP_UnsetUsages. |
HidP_UnsetUsages Il HidP_UnsetUsages set di routine set di pulsanti di controllo HID specificati usa OFF (zero) in un report HID. |
HidP_UsageAndPageListDifference La funzione HidP_UsageAndPageListDifference restituisce la differenza tra due elenchi di utilizzi. |
HidP_UsageListDifference La routine HidP_UsageListDifference restituisce le differenze tra due matrici di utilizzo HID. |
HidRegisterMinidriver La routine HidRegisterMinidriver viene chiamata dai minidriver HID, durante l'inizializzazione, per registrare con il driver di classe HID. |
HIDSPICX_DEVICE_CONFIG_INIT Altre informazioni su: HIDSPICX_DEVICE_CONFIG_INIT |
HidSpiCxDeviceConfigure Altre informazioni su: HidSpiCxDeviceConfigure |
HidSpiCxDeviceInitConfig Altre informazioni su: HidSpiCxDeviceInitConfig |
HidSpiCxNotifyDeviceReset Altre informazioni su: HidSpiCxNotifyDeviceReset |
PHIDP_GETCAPS La routine HidP_GetCaps restituisce una struttura di HIDP_CAPS della raccolta di primo livello. Questa routine è in hidclass.h. |
PI8042_ISR_WRITE_PORT La routine di callback tipizzata PI8042_ISR_WRITE_PORT scrive i dati in una porta i8042. I8042prt fornisce questo callback. |
PI8042_KEYBOARD_INITIALIZATION_ROUTINE Una routine di callback PI8042_KEYBOARD_INITIALIZATION_ROUTINE tipizzata integra l'inizializzazione predefinita di un dispositivo da tastiera di I8042prt. |
PI8042_KEYBOARD_ISR Una routine di callback PI8042_KEYBOARD_ISR tipizzata personalizza l'operazione dell'ISR della tastiera I8042prt. |
PI8042_MOUSE_ISR Una routine di callback PI8042_MOUSE_ISR tipizzata personalizza l'operazione dell'ISR del mouse I8042prt. |
PI8042_QUEUE_PACKET La routine di callback tipizzata PI8042_QUEUE_PACKET accoda un pacchetto di dati di input per l'elaborazione da parte dell'ISR DPC di una tastiera o di un dispositivo del mouse. I8042prt fornisce questo callback. |
PI8042_SYNCH_READ_PORT La routine di callback PI8042_SYNCH_READ_PORT tipizzata esegue una lettura sincronizzata da una porta i8042. I8042prt fornisce questo callback. |
PI8042_SYNCH_WRITE_PORT La routine di callback tipizzata PI8042_SYNCH_READ_PORT esegue una scrittura sincronizzata in una porta i8042. I8042prt fornisce questa routine. |
PSERVICE_CALLBACK_ROUTINE Un driver di funzione chiama il callback del servizio di classe nella routine di completamento del completamento dell'invio ISR. Il callback del servizio di classe trasferisce i dati di input dal buffer dei dati di input di un dispositivo alla coda dei dati della classe. |
VHF_CONFIG_INIT Usare la funzione VHF_CONFIG_INIT per inizializzare i membri necessari della struttura VHF_CONFIG allocata dal driver di origine HID. |
VhfAsyncOperationComplete Il driver di origine HID chiama questo metodo per impostare i risultati di un'operazione asincrona. |
VhfCreate Il driver di origine HID chiama questo metodo per creare un dispositivo HID virtuale. |
VhfDelete Il driver del dispositivo di origine HID chiama questo metodo per eliminare un dispositivo VHF. |
VhfReadReportSubmit Il driver di origine HID chiama questo metodo per inviare un report HID Read (Input) a Virtual HID Framework (VHF). |
VhfStart Il driver di origine HID chiama questo metodo per avviare il dispositivo HID virtuale. |
Strutture
CONNECT_DATA CONNECT_DATA specifica informazioni usate da Kbdclass e Mouclass per connettersi a una porta da tastiera o mouse. |
HID_COLLECTION_INFORMATION La struttura HID_COLLECTION_INFORMATION contiene informazioni generali su una raccolta di livello superiore. |
HID_DESCRIPTOR La struttura HID_DESCRIPTOR rappresenta un descrittore HID per un dispositivo HIDClass. |
HID_DEVICE_ATTRIBUTES La struttura HID_DEVICE_ATTRIBUTES contiene informazioni su un dispositivo HIDClass. |
HID_DEVICE_EXTENSION La struttura HID_DEVICE_EXTENSION viene usata da un minidriver HID come layout per l'estensione del dispositivo di un oggetto dispositivo HIDClass. |
HID_MINIDRIVER_REGISTRATION La struttura HID_MINIDRIVER_REGISTRATION contiene informazioni di registrazione che un minidriver HID passa ai driver client HID quando il minidriver registra con il driver di classe. |
HID_XFER_PACKET La struttura HID_XFER_PACKET in hidclass.he contiene informazioni su un report HID usato dal driver di classe HID con richieste di I/O per ottenere o impostare un report. |
HID_XFER_PACKET La struttura HID_XFER_PACKET in vhf.h contiene informazioni su un report HID usato dal driver di classe HID con richieste di I/O per ottenere o impostare un report. |
HIDD_ATTRIBUTES La struttura HIDD_ATTRIBUTES contiene informazioni sul fornitore su un dispositivo HIDClass. |
HIDP_BUTTON_ARRAY_DATA La struttura HIDP_BUTTON_ARRAY_DATA viene usata per ottenere o impostare i dati per un singolo pulsante in una matrice di pulsanti. |
HIDP_BUTTON_CAPS La struttura HIDP_BUTTON_CAPS contiene informazioni sulla funzionalità di utilizzo di un pulsante di controllo HID (o un set di pulsanti associati a un intervallo di utilizzo). |
HIDP_CAPS La struttura HIDP_CAPS contiene informazioni sulla funzionalità di una raccolta di livello superiore. |
HIDP_COLLECTION_DESC Contiene le informazioni di una raccolta di livello superiore. Questa struttura viene usata nella chiamata HidP_GetCollectionDescription. |
HIDP_DATA La struttura HIDP_DATA contiene informazioni sull'indice e il valore di un controllo HID in un report HID. |
HIDP_DEVICE_DESC Contiene il blocco di descrizione del dispositivo compilato nelle descrizioni della raccolta come elenchi collegati. Questa struttura viene usata da HidP_GetCollectionDescription. |
HIDP_EXTENDED_ATTRIBUTES La struttura HIDP_EXTENDED_ATTRIBUTES contiene informazioni sugli elementi globali specificati per un controllo HID non riconosciuto dal parser HID. |
HIDP_GETCOLDESC_DBG Contiene il codice di errore che indica l'errore nell'analisi del descrittore del report. Questa struttura viene usata nella chiamata HidP_GetCollectionDescription. |
HIDP_LINK_COLLECTION_NODE La struttura HIDP_LINK_COLLECTION_NODE contiene informazioni su una raccolta di collegamenti in una matrice di raccolta collegamenti di primo livello. |
HIDP_REPORT_IDS Contiene informazioni sull'ID report per una raccolta di livello superiore. |
HIDP_UNKNOWN_TOKEN La struttura HIDP_UNKNOWN_TOKEN contiene informazioni su un elemento globale non riconosciuto dal parser HID. |
HIDP_VALUE_CAPS La struttura HIDP_VALUE_CAPS contiene informazioni che descrivono la funzionalità di un set di valori di controllo HID (un singolo utilizzo o un intervallo di utilizzo). |
HIDSPICX_DEVICE_CONFIG Altre informazioni su: HIDSPICX_DEVICE_CONFIG |
HIDSPICX_DRIVER_GLOBALS Altre informazioni su: HIDSPICX_DRIVER_GLOBALS |
HIDSPICX_REPORT Altre informazioni su: HIDSPICX_REPORT |
INTERNAL_I8042_HOOK_KEYBOARD INTERNAL_I8042_HOOK_KEYBOARD viene usato da I8042prt per connettere routine di callback facoltative che integrano l'inizializzazione della tastiera e l'ISR della tastiera. I callback possono essere forniti da un driver di filtro di livello superiore facoltativo fornito dal fornitore. |
INTERNAL_I8042_HOOK_MOUSE INTERNAL_I8042_HOOK_MOUSE viene usato da I8042prt per connettere una routine di callback facoltativa che integra l'operazione del mouse ISR. Il callback può essere fornito da un driver di filtro di livello superiore facoltativo fornito dal fornitore. |
INTERNAL_I8042_START_INFORMATION INTERNAL_I8042_START_INFORMATION specifica l'oggetto interrupt che un driver del dispositivo di filtro di livello superiore fornito dal fornitore facoltativo può usare per sincronizzarne l'operazione con un ISR I8042prt. |
OUTPUT_PACKET OUTPUT_PACKET contiene informazioni sui dati scritti in un dispositivo da tastiera o mouse da I8042prt. |
USAGE_AND_PAGE La struttura USAGE_AND_PAGE specifica la pagina di utilizzo e l'ID utilizzo di un controllo HID. |
VHF_CONFIG Contiene informazioni di configurazione iniziali fornite dal driver di origine HID quando chiama VhfCreate per creare un dispositivo HID virtuale. |