Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Der IOCTL_AVC_UPDATE_VIRTUAL_SUBUNIT_INFO E/A-Steuerelementcode steuert die Enumeration virtueller Untereinheiten. Sie ist für den Benutzermodus sowie Kernelmoduskomponenten über den IRP_MJ_DEVICE_CONTROL Dispatch verfügbar. Für die Treiber-zu-Treiber-Kommunikation ist es ein METHOD_BUFFERED IOCTL. Legen Sie daher die IRP-Felder entsprechend fest (IrpStack->Parameters.DeviceIoControl.InputBufferLength und Irp->AssociatedIrp.SystemBuffer).
IOCTL_AVC_UPDATE_VIRTUAL_SUBUNIT_INFO wird verwendet, um Untereinheits-IDs eines einzelnen Typs hinzuzufügen oder zu entfernen. Bei aufeinander folgenden Aufrufen mit einem anderen ID-Teil der Untereinheitsadresse wird die Anzahl der aufgezählten IDs geändert. Beachten Sie, dass avc.sys nur die höchsten IDs hinzufügt oder entfernt. Dies ist eine Einschränkung der AV/C-Spezifikation, nicht die Treiberimplementierung.
Diese IOCTL verwendet die AVC_SUBUNIT_ADDR_SPEC Struktur.
Hauptcode
Statusblock
Bei erfolgreicher Ausführung legt der AV/C-Protokolltreiber Irp->IoStatus.Status-auf STATUS_SUCCESS fest.
Mögliche andere Rückgabewerte sind:
| Rückgabewert | Beschreibung |
|---|---|
| STATUS_INSUFFICIENT_RESOURCES | Es wurde kein Puffer übergeben oder nicht genügend Ressourcen zum Ausführen einer Registrierungsabfrage verfügbar. |
| STATUS_INVALID_BUFFER_SIZE | Der in Irp->AssociatedIrp.SystemBuffer übergebene Puffer muss mindestens so groß wie "sizeof(AVC_SUBUNIT_ADDR_SPEC)" sein, das eine Single-Byte-Untereinheitsadresse enthält, jedoch auf eine 32 Byte-Untereinheitsadresse beschränkt ist. |
| STATUS_INVALID_PARAMETER | Die Untereinheitsadresse wurde falsch angegeben. |
| STATUS_ACCESS_DENIED | Der aktuelle Benutzer verfügt über unzureichende Registrierungszugriffsberechtigungen, um das Update dauerhaft zu machen. |
Bemerkungen
Muss bei IRQL = PASSIVE_LEVEL aufgerufen werden.
Anforderungen
| Anforderung | Wert |
|---|---|
| Header- | avc.h (include Avc.h) |