EVT_VHF_ASYNC_OPERATION Rückruffunktion (vhf.h)
Der HID-Quelltreiber implementiert diesen Ereignisrückruf, wenn er einen der vier asynchronen Vorgänge zum Abrufen und Festlegen von HID-Berichten unterstützen möchte.
Syntax
EVT_VHF_ASYNC_OPERATION EvtVhfAsyncOperation;
void EvtVhfAsyncOperation(
[in] PVOID VhfClientContext,
[in] VHFOPERATIONHANDLE VhfOperationHandle,
[in, optional] PVOID VhfOperationContext,
[in] PHID_XFER_PACKET HidTransferPacket
)
{...}
Parameter
[in] VhfClientContext
Ein undurchsichtiger Zeiger auf einen vom HID-Quelltreiber definierten Puffer, den der Treiber in der an VhfCreate bereitgestellten VHF_CONFIG-Struktur übergeben hat, um das virtuelle HID-Gerät zu erstellen.
[in] VhfOperationHandle
Ein undurchsichtiges Handle, das diesen asynchronen Vorgang eindeutig identifiziert.
[in, optional] VhfOperationContext
Zeiger auf einen Puffer, der vom HID-Quelltreiber für die Wartung des Vorgangs verwendet werden kann. Die Größe des Puffers wird vom HID-Quelltreiber in der VHF_CONFIG Struktur angegeben, die für VhfCreate bereitgestellt wird.
[in] HidTransferPacket
Ein Zeiger auf eine HID_XFER_PACKET-Struktur . Enthält Informationen zu einem HID-Bericht und wird vom HID-Quelltreiber und dem HID-Klasse/Mini-Treiberpaar für E/A-Anforderungen zum Abrufen oder Festlegen eines Berichts verwendet.
Rückgabewert
Keine
Bemerkungen
Es gibt vier Arten von asynchronen Vorgängen, die ihr HID-Quelltreiber unterstützen kann: GetFeature, SetFeature, WriteReport, GetInputReport.
Wenn VHF eine Anforderung erhält, die einen HID-Bericht festlegt oder abfragt, ruft VHF die zuvor registrierte Rückruffunktion EvtVhfAsyncOperation auf, und ein asynchroner Vorgang wird gestartet. Jeder Vorgang wird durch ein VHFOPERATIONHANDLE-Handle identifiziert, das von VHF festgelegt wird. Wenn der Treiber während der Initialisierung im OperationContextSize-Member des VHF_CONFIG einen Wert ungleich null angegeben hat, weist VHF einen Puffer dieser Größe zu und übergibt einen Zeiger an diesen Puffer im VhfOperationContext-Parameter , wenn evtVhfAsyncOperation aufgerufen wird.
HidTransferPacket ist der Übertragungspuffer für diesen Vorgang, der auf eine VHF-zugeordnete Struktur verweist, die HID-Berichtsspezifische Details enthält. Wenn der Vorgang beispielsweise GetFeature lautet, wird der Puffer nach Abschluss vom HID-Quelltreiber mit dem angeforderten HID-Featurebericht gefüllt.
Nach Abschluss des Vorgangs ruft die HID-Quelle VhfAsyncOperationComplete auf, um den Abschluss status zu melden.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 10 |
Unterstützte Mindestversion (Server) | Nicht unterstützt |
Zielplattform | Desktop |
Kopfzeile | vhf.h |
IRQL | <=DISPATCH_LEVEL |
Weitere Informationen
Schreiben eines HID-Quelltreibers mithilfe von Virtual HID Framework (VHF)