Fonction IoVolumeDeviceToDosName (ntddk.h)
La routine IoVolumeDeviceToDosName retourne le chemin MS-DOS pour un objet d’appareil spécifié qui représente un volume de système de fichiers.
Syntaxe
NTSTATUS IoVolumeDeviceToDosName(
[in] PVOID VolumeDeviceObject,
[out] PUNICODE_STRING DosName
);
Paramètres
[in] VolumeDeviceObject
Pointeur vers un objet de périphérique qui représente un objet de périphérique de volume créé par un pilote de classe de stockage.
[out] DosName
Pointeur vers une structure de UNICODE_STRING allouée par l’appelant. Si l’appel réussit, IoVolumeDeviceToDosName définit les valeurs des membres Length, MaximumLength et Buffer de cette structure. À la sortie, le membre Buffer pointe vers une chaîne à caractères larges et terminée par null qui contient le chemin MS-DOS de l’objet de périphérique de volume spécifié par VolumeDeviceObject. Pour plus d'informations, consultez la section Notes.
Valeur retournée
IoVolumeDeviceToDosName retourne STATUS_SUCCESS si l’appel réussit. Les valeurs de retour d’erreur possibles incluent les codes status suivants.
Valeur retournée | Description |
---|---|
STATUS_INVALID_PARAMETER | La routine a échoué en raison de valeurs de paramètre non valides passées par l’appelant. |
STATUS_INSUFFICIENT_RESOURCES | La routine n’a pas pu allouer les ressources requises pour cette opération. |
Remarques
IoVolumeDeviceToDosName alloue la mémoire tampon de chaîne pointée par le membre Buffer de la structure UNICODE_STRING vers laquelle pointe le paramètre DosName . Une fois que cette mémoire tampon n’est plus nécessaire, un appelant de cette routine doit appeler la routine ExFreePool pour libérer la mémoire tampon.
À compter de Windows Vista, vous devez vous assurer que les API ne sont pas désactivés avant d’appeler cette routine. La routine KeAreAllApcsDisabled peut être utilisée pour vérifier que les API ne sont pas désactivées.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
En-tête | ntddk.h (incluez Ntddk.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |