Metodo MergeVirtualHardDisk della classe Msvm_ImageManagementService
Unisce un disco rigido virtuale figlio in una catena di differenze con uno o più dischi rigidi virtuali padre nella catena. Per questo metodo, vedere la sezione Osservazioni relative alle restrizioni di utilizzo.
Se l'utente che esegue questa funzione non dispone dell'autorizzazione per aggiornare le macchine virtuali, questa funzione avrà esito negativo.
Sintassi
uint32 MergeVirtualHardDisk(
[in] string SourcePath,
[in] string DestinationPath,
[out] CIM_ConcreteJob REF Job
);
Parametri
-
SourcePath [in]
-
Tipo: string
Percorso completo che specifica il percorso del file del disco rigido virtuale da unire.
-
DestinationPath [in]
-
Tipo: string
Percorso completo che specifica il percorso del file del disco rigido virtuale padre in cui unire i dati. Potrebbe trattarsi del disco rigido virtuale padre immediato del file di unione o dell'immagine del disco padre a pochi livelli fino alla catena di differenze.
-
Processo [out]
-
Tipo: CIM_ConcreteJob
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
Tipo: uint32
Questo metodo può restituire uno dei valori seguenti.
-
Completata senza errore (0)
-
Parametri del metodo controllati - Processo avviato (4096)
-
Non riuscito (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)
-
Sistema non disponibile (32777)
-
Memoria insufficiente (32778)
-
File non trovato (32779)
Commenti
Il disco rigido virtuale figlio deve essere offline.
Con questo metodo è possibile usare solo i tipi di dischi rigidi virtuali seguenti:
- Disco rigido virtuale differenze
- VHDX differenze
L'accesso alla classe Msvm_ImageManagementService potrebbe essere limitato dal filtro controllo dell'account utente. Per altre informazioni, vedere Controllo dell'account utente e WMI.
Esempio
L'esempio C# seguente espande un file del disco rigido virtuale. Le utilità a cui si fa riferimento sono disponibili in Utilità comuni per gli esempi di virtualizzazione (V2).
// Merges a VHD into a parent VHD.
// ChildPath: The path to the VHD to merge.</param>
// ParentPath: The path to the parent into which to merge.</param>
public static void MergeVirtualHardDisk(string ChildPath, string ParentPath)
{
ManagementScope scope = new ManagementScope(@"root\virtualization\v2", null);
ManagementObject imageService = Utility.GetServiceObject(scope, "Msvm_ImageManagementService");
ManagementBaseObject inParams = imageService.GetMethodParameters("MergeVirtualHardDisk");
inParams["SourcePath"] = ChildPath;
inParams["DestinationPath"] = ParentPath;
ManagementBaseObject outParams = imageService.InvokeMethod("MergeVirtualHardDisk", inParams, null);
if ((UInt32)outParams["ReturnValue"] == ReturnCode.Started)
{
if (Utility.JobCompleted(outParams, scope))
{
Console.WriteLine("MergeVirtualHardDisk succeeded.");
}
else
{
Console.WriteLine("MergeVirtualHardDisk failed.");
}
}
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 |
|
DLL |
|
Vedi anche
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per