Método RealizePlannedSystem de la clase Msvm_VirtualSystemManagementService

Valida la configuración de una máquina virtual planeada y la convierte en una máquina virtual realizada. Los archivos de estado guardados o en tiempo de ejecución asociados a la máquina virtual se copiarán del directorio de importación a la raíz de datos de la máquina virtual, si procede.

Sintaxis

uint32 RealizePlannedSystem(
  [in]  Msvm_PlannedComputerSystem REF PlannedSystem,
  [out] CIM_ComputerSystem         REF ResultingSystem,
  [out] CIM_ConcreteJob            REF Job
);

Parámetros

PlannedSystem [in]

Referencia a la instancia de Msvm_PlannedComputerSystem que se va a convertir en una máquina virtual realizada.

ResultsSystem [out]

Si la operación se completa de forma sincrónica, una referencia a un objeto CIM_ComputerSystem que representa la máquina virtual realizada resultante.

Tipo de datos actualizado a partir de Msvm_ComputerSystem en Windows 10, versión 1703.

Trabajo [out]

Si la operación se realiza de forma asincrónica, este método devolverá 4096 y este parámetro contendrá una referencia a un objeto derivado de CIM_ConcreteJob.

Valor devuelto

Este método devuelve uno de los valores siguientes.

Completado sin error (0)

Parámetros del método activados: trabajo iniciado (4096)

Error (32768)

Acceso denegado (32769)

No compatible (32770)

El estado es desconocido (32771)

Tiempo de espera (32772)

Parámetro no válido (32773)

El sistema está en uso (32774)

Estado no válido para esta operación (32775)

Tipo de datos incorrecto (32776)

El sistema no está disponible (32777)

Memoria insuficiente (32778)

Ejemplos

En el ejemplo de C# siguiente se usa el método RealizePlannedSystem para realizar una máquina virtual planeada. Este código se toma del ejemplo de máquinas virtuales planeadas de Hyper-V. Las utilidades a las que se hace referencia se pueden encontrar en Utilidades comunes para los ejemplos de virtualización (V2).

Importante

Para funcionar correctamente, el código siguiente debe ejecutarse en el servidor host de la máquina virtual y debe ejecutarse con privilegios de administrador.

/// <summary>
/// Finds the first Planned VM matching pvmName and realizes it.
/// </summary>
/// <param name="pvmName">The name of the PVM to be realized.</param>
/// <returns>The Realized Virtual Machine.</returns>
internal static ManagementObject
RealizePvm(
    string pvmName
    )
{
    ManagementObject vm = null;
    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("RealizePlannedSystem"))
    {
        inParams["PlannedSystem"] = pvm.Path;

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

        using (ManagementBaseObject outParams =
            managementService.InvokeMethod("RealizePlannedSystem", inParams, null))
        {
            if (WmiUtilities.ValidateOutput(outParams, scope, true, true))
            {
                using (ManagementObject job =
                    new ManagementObject((string)outParams["Job"]))
                using (ManagementObjectCollection pvmCollection =
                    job.GetRelated("Msvm_ComputerSystem",
                        "Msvm_AffectedJobElement", null, null, null, null, false, null))
                {
                    vm = WmiUtilities.GetFirstObjectFromCollection(pvmCollection);
                }
            }
        }
    }

    return vm;
}

Requisitos

Requisito Value
Cliente mínimo compatible
Windows 8 [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows Server 2012 [solo aplicaciones de escritorio]
Espacio de nombres
Root\Virtualization\V2
MOF
WindowsVirtualization.V2.mof
Archivo DLL
Vmms.exe

Consulte también

Msvm_VirtualSystemManagementService