IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES IOCTL (ntddstor.h)
Diese IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES Anforderung wird verwendet, um eine Datensatzverwaltungsanforderung an ein Speichergerät zu senden.
Hauptcode
Eingabepuffer
Der Puffer bei Irp->AssociatedIrp.SystemBuffer enthält eine DEVICE_DSM_INPUT Struktur. Je nach Aktion Element dieser Struktur enthält der Eingabepuffer möglicherweise zusätzlich einen Parameterblock und einen Block von Datasetbereichen. Beschreibungen aller möglichen Aktionen finden Sie unter DEVICE_DSM_ACTION Beschreibungen.
Eingabepufferlänge
Parameters.DeviceIoControl.InputBufferLength an der I/O-Stapelposition des IRP gibt die Größe des Puffers in Bytes an, die mindestens Größe des(DEVICE_DSM_INPUT) sein muss.
Ausgabepuffer
Je nach dem wert, der im Action Member von DEVICE_DSM_INPUT festgelegt ist, gibt die Anforderung möglicherweise Daten im Puffer bei Irp->AssociatedIrp.SystemBufferzurück. Der Systempuffer enthält gültige DEVICE_DSM_OUTPUT Daten, wenn der DSM-Vorgang ausgabe und Parameters.DeviceIoControl.OutputBufferLength> 0 zurückgibt. Je nach Actionkann der Ausgabepuffer zusätzlich einen Ausgabeblock enthalten.
Länge des Ausgabepuffers
Die Länge in Byte des Ausgabepuffers, falls vorhanden. Wenn die Ausgabe zurückgegeben wird, muss der Ausgabepuffer mindestens Größe(DEVICE_DSM_OUTPUT) sein.
Statusblock
Das feld Status kann auf STATUS_SUCCESS oder möglicherweise auf STATUS_INVALID_DEVICE_REQUEST, STATUS_BUFFER_TOO_SMALL, STATUS_BUFFER_OVERFLOW oder einen anderen Fehlerstatus festgelegt werden.
Bemerkungen
Aufgrund der Speicherpoolanforderungen durch den Speichertreiberstapel muss der Abschluss des IRP, das diese IOCTL enthält, bei IRQL-< DISPATCH_LEVEL sein.
Weitere Informationen finden Sie unter Data Set Management Overview.
Anforderungen
Anforderung | Wert |
---|---|
Header- | ntddstor.h (include Ntddstor.h) |
IRQL- | IRQL-< DISPATCH_LEVEL (Siehe Abschnitt "Hinweise".) |
Siehe auch
übersicht über Data Set Management