Freigeben über


IoGetDiskDeviceObject-Funktion (ntifs.h)

Die IoGetDiskDeviceObject Routine ruft einen Zeiger auf das Datenträgergeräteobjekt ab, das einem bestimmten Dateisystemvolumegerätobjekt zugeordnet ist.

Syntax

NTSTATUS IoGetDiskDeviceObject(
  [in] PDEVICE_OBJECT FileSystemDeviceObject,
       PDEVICE_OBJECT *DiskDeviceObject
);

Parameter

[in] FileSystemDeviceObject

Ein Zeiger auf das Dateisystemgerätobjekt.

DiskDeviceObject

Ein Zeiger auf eine Variable, die die Adresse des Geräteobjekts für das Datenträgergerätobjekt empfängt.

Rückgabewert

IoGetDiskDeviceObject gibt einen der folgenden Statuswerte zurück:

Rückgabecode Beschreibung
STATUS_INVALID_PARAMETER
Einer der Parameter, die an diese Funktion übergeben wurden, war ungültig.
STATUS_VOLUME_DISMOUNTED
STATUS_SUCCESS

Bemerkungen

IoGetDiskDeviceObject gibt einen Zeiger auf das Speichergerätobjekt zurück, das dem Dateisystemvolume zugeordnet ist. Das Speichergerät muss kein tatsächlicher Datenträger sein.

Dateisystemfiltertreiber rufen in der Regel IoGetDiskDeviceObject für ein Dateisystemvolumegerätobjekt auf, um festzustellen, ob das Volume bereitgestellt wird.

IoGetDiskDeviceObject erhöht die Verweisanzahl auf das Datenträgergerätobjekt, auf das durch DeviceObjectverwiesen wird. Daher muss jeder erfolgreiche Aufruf von IoGetDiskDeviceObject- mit einem nachfolgenden Aufruf von ObDereferenceObjectabgeglichen werden.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 2000 SP4 Update Rollup; Windows XP
Zielplattform- Universal
Header- ntifs.h (einschließlich Ntifs.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe
IRQL- <= DISPATCH_LEVEL

Siehe auch

IoEnumerateDeviceObjectList

IoGetAttachedDevice-

IoGetAttachedDeviceReference

IoGetLowerDeviceObject

ObDereferenceObject