Metodo GetVirtualHardDiskState della classe Msvm_ImageManagementService

Recupera le informazioni sullo stato per un file disco rigido virtuale.

Sintassi

uint32 GetVirtualHardDiskState(
  [in]  string              Path,
  [out] string              State,
  [out] CIM_ConcreteJob REF Job
);

Parametri

Percorso [in]

Percorso completo del file di immagine del disco.

Stato [out]

In caso di esito positivo, riceve un'istanza incorporata della classe Msvm_VirtualHardDiskState contenente le informazioni sullo stato per il disco rigido virtuale.

Processo [out]

Se l'operazione viene eseguita in modo asincrono, questo metodo restituirà 4096 e questo parametro conterrà un riferimento a un oggetto derivato da CIM_ConcreteJob.

Valore restituito

Questo metodo restituisce uno dei valori seguenti.

Completato senza errore (0)

Parametri del metodo controllati - Processo avviato (4096)

Errore (32768)

Accesso negato (32769)

Non supportato (32770)

Lo stato è sconosciuto (32771)

Timeout (32772)

Parametro non valido (32773)

Il sistema è in uso (32774)

Stato non valido per questa operazione (32775)

Tipo di dati non corretto (32776)

Il sistema non è disponibile (32777)

Memoria insufficiente (32778)

File non trovato (32779)

Commenti

L'accesso alla classe Msvm_ImageManagementService potrebbe essere limitato dal filtro dell'interfaccia utente. Per altre informazioni, vedere Controllo account utente e WMI.

Esempio

Nell'esempio C# seguente viene illustrato come chiamare il metodo GetVirtualHardDiskState . Le utilità a cui si fa riferimento sono disponibili nelle utilità comuni per gli esempi di virtualizzazione (V2).

public static void GetVirtualHardDiskState(string vhdPath)
{
    ManagementScope scope = new ManagementScope(@"root\virtualization\V2", null);
    ManagementObject imageService = Utility.GetServiceObject(scope, "Msvm_ImageManagementService");
    ManagementBaseObject inParams = imageService.GetMethodParameters("GetVirtualHardDiskState");

    inParams["Path"] = vhdPath;
    
    ManagementBaseObject outParams = imageService.InvokeMethod("GetVirtualHardDiskState", inParams, null);
    if ((UInt32)outParams["ReturnValue"] == ReturnCode.Started)
    {
        if (Utility.JobCompleted(outParams, scope))
        {
            Console.WriteLine("GetVirtualHardDiskState was successful.");
        }
        else
        {
            Console.WriteLine("GetVirtualHardDiskState was not successful.");
        }
    }
    else if ((UInt32)outParams["ReturnValue"] == ReturnCode.Completed)
    {
        string diskStateString = outParams["State"].ToString();
        Utility.PrintEmbeddedInstance(diskStateString);
    }

    outParams.Dispose();
    inParams.Dispose();
    imageService.Dispose();
}

Requisiti

Requisito Valore
Client minimo supportato
Windows 8 [solo app desktop]
Server minimo supportato
Windows Server 2012 [solo app desktop]
Spazio dei nomi
Root\Virtualization\V2
MOF
WindowsVirtualization.V2.mof
DLL
Vmms.exe

Vedi anche

Msvm_ImageManagementService