Freigeben über


IoVolumeDeviceToDosName-Funktion (ntddk.h)

Die IoVolumeDeviceToDosName Routine gibt den MS-DOS Pfad für ein angegebenes Geräteobjekt zurück, das ein Dateisystemvolume darstellt.

Syntax

NTSTATUS IoVolumeDeviceToDosName(
  [in]  PVOID           VolumeDeviceObject,
  [out] PUNICODE_STRING DosName
);

Parameter

[in] VolumeDeviceObject

Ein Zeiger auf ein Geräteobjekt, das ein Volumegerätobjekt darstellt, das von einem Speicherklassentreiber erstellt wurde.

[out] DosName

Ein Zeiger auf eine aufrufergeteilte UNICODE_STRING Struktur. Wenn der Aufruf erfolgreich ist, legt IoVolumeDeviceToDosName die Werte der Length, MaximumLengthund Buffer Member dieser Struktur fest. Beim Beenden verweist das Buffer--Element auf eine Zeichenfolge mit breitem Zeichen, null-beendete Zeichenfolge, die den MS-DOS Pfad des Volumegeräteobjekts enthält, das durch VolumeDeviceObjectangegeben wird. Weitere Informationen finden Sie in den Hinweisen.

Rückgabewert

IoVolumeDeviceToDosName gibt STATUS_SUCCESS zurück, wenn der Aufruf erfolgreich ist. Mögliche Fehlerrückgabewerte sind die folgenden Statuscodes.

Rückgabewert Beschreibung
STATUS_INVALID_PARAMETER Fehler der Routine aufgrund ungültiger Parameterwerte, die vom Aufrufer übergeben werden.
STATUS_INSUFFICIENT_RESOURCES Die Routine konnte ressourcen, die für diesen Vorgang erforderlich sind, nicht zuordnen.

Bemerkungen

IoVolumeDeviceToDosName weist den Zeichenfolgenpuffer zu, auf den der Buffer Member der UNICODE_STRING Struktur verweist, auf die der DosName Parameter verweist. Nachdem dieser Puffer nicht mehr erforderlich ist, sollte ein Aufrufer dieser Routine die ExFreePool- Routine aufrufen, um den Puffer freizulegen.

Ab Windows Vista müssen Sie sicherstellen, dass APCs vor dem Aufrufen dieser Routine nicht deaktiviert sind. Die KeAreAllApcsDisabled Routine kann verwendet werden, um zu überprüfen, ob APCs nicht deaktiviert sind.

Anforderungen

Anforderung Wert
Zielplattform- Universal
Header- ntddk.h (include Ntddk.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe
IRQL- PASSIVE_LEVEL

Siehe auch

ExFreePool-

KeAreAllApcsDisabled

UNICODE_STRING