Ajout d’une lettre de lecteur à un numéro d’unité logique

[À compter de Windows 8 et Windows Server 2012, l’interface COM du service de disque virtuel est remplacée par l’API gestion du stockage Windows.]

Vous pouvez affecter directement des lettres de lecteur à des objets de volume ; Toutefois, si votre disque est un objet LUN, vous devez effectuer quelques étapes supplémentaires.

Pour affecter une lettre de lecteur à un objet LUN

  1. Si nécessaire, démasquez le numéro d’unité logique sur l’hôte local.

    Notes

    Vous ne pouvez pas effectuer d’opérations d’administration logicielles sur un objet LUN qui est masqué sur un autre ordinateur dans la session VDS active.

     

  2. Appelez la méthode IVdsService::Reenumerate sur l’ordinateur qui exécute le fournisseur de matériel.

  3. Initialisez le lun en tant que disque de base comme suit :

    1. Appelez la méthode IUnknown::QueryInterface sur l’objet LUN pour interroger l’interface IVdsDisk .
    2. Appelez la méthode IVdsSwProvider::CreatePack pour créer un pack de base.
    3. Appelez la méthode IVdsPack::AddDisk pour ajouter le disque au nouveau pack.
  4. Créez une partition sur le disque et obtenez l’objet volume comme suit :

    1. Appelez la méthode IVdsCreatePartitionEx::CreatePartitionEx pour créer une partition.
    2. Appelez la méthode IVdsAsync::Wait sur l’objet asynchrone retourné par CreatePartitionEx pour obtenir l’identificateur de volume de la structure VDS_ASYNC_OUTPUT .
    3. Passez l’identificateur de volume en tant que paramètre à la méthode IVdsService::GetObject pour obtenir un pointeur d’objet de volume.
  5. Appelez la méthode IVdsVolumeMF::AddAccessPath pour affecter la lettre de lecteur.

Notes

La méthode IVdsAdvancedDisk::AssignDriveLetter affecte des lettres de lecteur à des partitions sans volumes associés, comme les partitions OEM ou ESP. Vous ne pouvez pas l’utiliser pour affecter une lettre de lecteur à un objet LUN.

 

Utilisation de VDS

IVdsService::Réumerate

IVdsDisk

IVdsSwProvider::CreatePack

IVdsPack::AddDisk

IVdsCreatePartitionEx::CreatePartitionEx

IVdsAsync::Wait

VDS_ASYNC_OUTPUT

IVdsVolumeMF::AddAccessPath

IVdsAdvancedDisk::AssignDriveLetter