Share via


Aggiunta di una lettera di unità a un LUN

[A partire da Windows 8 e Windows Server 2012, l'interfaccia COM del servizio disco virtuale viene sostituita dall'API gestione archiviazione di Windows.

È possibile assegnare direttamente lettere di unità agli oggetti volume; Tuttavia, se il disco è un oggetto LUN, sono disponibili alcuni passaggi aggiuntivi.

Per assegnare una lettera di unità a un oggetto LUN

  1. Se necessario, annullare il mascherare il LUN nell'host locale.

    Nota

    Non è possibile eseguire operazioni amministrative software in un oggetto LUN che viene smascherato in un altro computer all'interno della sessione VDS corrente.

     

  2. Richiamare il metodo IVdsService::Reenumerate nel computer che esegue il provider hardware.

  3. Inizializzare il LUN come disco di base come segue:

    1. Richiamare il metodo IUnknown::QueryInterface nell'oggetto LUN per eseguire query sull'interfaccia IVdsDisk .
    2. Richiamare il metodo IVdsSwProvider::CreatePack per creare un pacchetto di base.
    3. Richiamare il metodo IVdsPack::AddDisk per aggiungere il disco al nuovo pacchetto.
  4. Creare una partizione sul disco e ottenere l'oggetto volume come indicato di seguito:

    1. Richiamare il metodo IVdsCreatePartitionEx::CreatePartitionEx per creare una partizione.
    2. Richiamare il metodo IVdsAsync::Wait nell'oggetto asincrono restituito da CreatePartitionEx per ottenere l'identificatore del volume dalla struttura VDS_ASYNC_OUTPUT .
    3. Passare l'identificatore del volume come parametro al metodo IVdsService::GetObject per ottenere un puntatore a oggetti del volume.
  5. Richiamare il metodo IVdsVolumeMF::AddAccessPath per assegnare la lettera di unità.

Nota

Il metodo IVdsAdvancedDisk::AssignDriveLetter assegna lettere di unità alle partizioni senza volumi associati, ad esempio partizioni OEM o ESP. Non è possibile usarlo per assegnare una lettera di unità a un oggetto LUN.

 

Uso di VDS

IVdsService::Reenumerate

IVdsDisk

IVdsSwProvider::CreatePack

IVdsPack::AddDisk

IVdsCreatePartitionEx::CreatePartitionEx

IVdsAsync::Wait

VDS_ASYNC_OUTPUT

IVdsVolumeMF::AddAccessPath

IVdsAdvancedDisk::AssignDriveLetter