Partager via


Méthode ValidatePlannedSystem de la classe Msvm_VirtualSystemManagementService

Valide le système planifié spécifié. Cela implique des vérifications de la configuration de la machine virtuelle, des appareils, de la configuration instantané, des appareils instantané, des fichiers d’état enregistrés et des fichiers de stockage.

Syntaxe

uint32 ValidatePlannedSystem(
  [in]  Msvm_PlannedComputerSystem REF PlannedSystem,
  [out] CIM_ConcreteJob            REF Job
);

Paramètres

PlannedSystem [in]

Référence à un objet Msvm_PlannedComputerSystem qui représente le système planifié à valider.

Travail [out]

Si l’opération est effectuée de manière asynchrone, cette méthode retourne 4096 et ce paramètre contient une référence à un objet dérivé de CIM_ConcreteJob.

Valeur retournée

Cette méthode retourne l’une des valeurs suivantes.

Terminé avec aucune erreur (0)

Paramètres de méthode vérifiés - Travail démarré (4096)

Échec (32768)

Accès refusé (32769)

Non pris en charge (32770)

L’état est inconnu (32771)

Délai d’expiration (32772)

Paramètre non valide (32773)

Le système est en cours d’utilisation (32774)

État non valide pour cette opération (32775)

Type de données incorrect (32776)

Le système n’est pas disponible (32777)

Mémoire insuffisante (32778)

Fichier en cours d’utilisation (32779)

Exemples

L’exemple C# suivant utilise la méthode ValidatePlannedSystem pour valider une machine virtuelle planifiée. Ce code est extrait de l’exemple de machines virtuelles planifiées Hyper-V. Les utilitaires référencés se trouvent dans Utilitaires communs pour les exemples de virtualisation (V2).

Important

Pour fonctionner correctement, le code suivant doit être exécuté sur le serveur hôte de la machine virtuelle et doit être exécuté avec des privilèges d’administrateur.

/// <summary>
/// Finds the first Planned VM matching pvmName and validates it, displaying
/// any warnings produced.
/// </summary>
/// <param name="pvmName">The name of the PVM to be validated.</param>
internal static void
ValidatePvm(
    string pvmName
    )
{
    ManagementScope scope = new ManagementScope(@"root\virtualization\v2");

    using (ManagementObject pvm = WmiUtilities.GetPlannedVirtualMachine(pvmName, scope))
    using (ManagementObject managementService = WmiUtilities.GetVirtualMachineManagementService(scope))
    using (ManagementBaseObject inParams = 
        managementService.GetMethodParameters("ValidatePlannedSystem"))
    {
        inParams["PlannedSystem"] = pvm.Path;

        Console.WriteLine("Validating Planned Virtual Machine \"{0}\" ({1})...",
                pvm["ElementName"], pvm["Name"]);

        using (ManagementBaseObject outParams = 
            managementService.InvokeMethod("ValidatePlannedSystem", inParams, null))
        {
            if (WmiUtilities.ValidateOutput(outParams, scope))
            {
                using (ManagementObject job = 
                    new ManagementObject((string)outParams["Job"]))
                {
                    WmiUtilities.PrintMsvmErrors(job);
                }
            }
        }
    }
}

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows 8 [applications de bureau uniquement]
Serveur minimal pris en charge
Windows Server 2012 [applications de bureau uniquement]
Espace de noms
Root\Virtualization\V2
MOF
WindowsVirtualization.V2.mof
DLL
Vmms.exe

Voir aussi

Msvm_VirtualSystemManagementService