Método GetSummaryInformation da classe Msvm_VirtualSystemManagementService
Retorna informações de resumo da máquina virtual.
Sintaxe
uint32 GetSummaryInformation(
[in] CIM_VirtualSystemSettingData REF SettingData[],
[in] uint32 RequestedInformation[],
[out] Msvm_SummaryInformationBase SummaryInformation[]
);
Parâmetros
-
SettingData [in]
-
Tipo: CIM_VirtualSystemSettingData[]
Uma matriz de instâncias CIM_VirtualSystemSettingData que especificam as máquinas virtuais ou instantâneos para os quais as informações devem ser recuperadas. Se esse parâmetro for Null, as informações de todas as máquinas virtuais serão recuperadas.
-
RequestedInformation [in]
-
Tipo: uint32[]
Uma matriz de valores de enumeração, que correspondem às propriedades na classe Msvm_SummaryInformation , que especificam os dados a serem recuperados para as máquinas virtuais e instantâneos especificados na matriz SettingData .
-
Nome (0)
-
Isso corresponde à propriedade Name da classe Msvm_SummaryInformation .
-
Nome do elemento (1)
-
Isso corresponde à propriedade ElementName da classe Msvm_SummaryInformation .
-
Hora da Criação (2)
-
Isso corresponde à propriedade CreationTime da classe Msvm_SummaryInformation .
-
Notas (3)
-
Isso corresponde à propriedade Notes da classe Msvm_SummaryInformation .
-
Número de processadores (4)
-
Isso corresponde à propriedade NumberOfProcessors da classe Msvm_SummaryInformation .
-
Imagem em miniatura pequena (80x60) (5)
-
Isso corresponde à propriedade ThumbnailImage da classe Msvm_SummaryInformation . Uma imagem em miniatura com as dimensões de 80 60 será recuperada.
-
Imagem de Miniatura Média (160x120) (6)
-
Isso corresponde à propriedade ThumbnailImage da classe Msvm_SummaryInformation . Uma imagem em miniatura com as dimensões 160 120 será recuperada.
-
Imagem em miniatura grande (320x240) (7)
-
Isso corresponde à propriedade ThumbnailImage da classe Msvm_SummaryInformation . Uma imagem em miniatura com as dimensões 320 240 será recuperada.
-
AllocatedGPU (8)
-
Isso corresponde à propriedade AllocatedGPU da classe Msvm_SummaryInformation .
-
VirtualSwitchNames (9)
-
Versão (10)
-
Observação
Adicionado em Windows 10 e Windows Server 2016.
-
Blindado (11)
-
Observação
Adicionado em Windows 10, versão 1703 e Windows Server 2016.
-
EnabledState (100)
-
Isso corresponde à propriedade EnabledState da classe Msvm_SummaryInformation .
-
ProcessorLoad (101)
-
Isso corresponde à propriedade ProcessorLoad da classe Msvm_SummaryInformation .
-
ProcessorLoadHistory (102)
-
Isso corresponde à propriedade ProcessorLoadHistory da classe Msvm_SummaryInformation .
-
MemoryUsage (103)
-
Isso corresponde à propriedade MemoryUsage da classe Msvm_SummaryInformation .
-
Pulsação (104)
-
Isso corresponde à propriedade Heartbeat da classe Msvm_SummaryInformation .
-
Tempo de atividade (105)
-
Isso corresponde à propriedade UpTime da classe Msvm_SummaryInformation .
-
GuestOperatingSystem (106)
-
Isso corresponde à propriedade GuestOperatingSystem da classe Msvm_SummaryInformation .
-
Instantâneos (107)
-
Isso corresponde à propriedade Snapshots da classe Msvm_SummaryInformation .
-
AssíncronaTasks (108)
-
Isso corresponde à propriedade AsynchronousTasks da classe Msvm_SummaryInformation .
-
HealthState (109)
-
Isso corresponde à propriedade HealthState da classe Msvm_SummaryInformation .
-
OperationalStatus (110)
-
Isso corresponde à propriedade OperationalStatus da classe Msvm_SummaryInformation .
-
StatusDescriptions (111)
-
Isso corresponde à propriedade StatusDescriptions da classe Msvm_SummaryInformation .
-
Memória Disponível (112)
-
Isso corresponde à propriedade MemoryAvailable da classe Msvm_SummaryInformation .
-
AvailableMemoryBuffer (113)
-
Isso corresponde à propriedade AvailableMemoryBuffer da classe Msvm_SummaryInformation .
-
Modo de replicação (114)
-
Isso corresponde à propriedade ReplicationMode da classe Msvm_SummaryInformation .
-
Estado de replicação (115)
-
Isso corresponde à propriedade ReplicationState da classe Msvm_SummaryInformation .
-
Replication HealthTest Replica System (116)
-
Isso corresponde à propriedade ReplicationHealth da classe Msvm_SummaryInformation .
-
Integridade do Aplicativo (117)
-
ReplicationStateEx (118)
-
Isso corresponde à propriedade ReplicationState da classe Msvm_ReplicationRelationship . Essa é uma matriz para todos os valores de estado de replicação em relação primária e estendida. 0 valor de índice é sempre para a relação primária e, se a replicação estendida estiver habilitada, ela será retornada no índice 1.
-
ReplicationHealthEx (119)
-
Isso corresponde à propriedade ReplicationHealth da classe Msvm_ReplicationRelationship . Essa é uma matriz para todos os valores de integridade de replicação em relação primária e estendida. 0 valor de índice é sempre para a relação primária e, se a replicação estendida estiver habilitada, ela será retornada no índice 1.
-
SwapFilesInUse (120)
-
Isso corresponde à propriedade SwapFilesInUse da classe Msvm_SummaryInformation .
-
IntegrationServicesVersionState (121)
-
ReplicationProviderId (122)
-
Isso corresponde à propriedade Name da classe Msvm_ReplicationProvider .
-
MemorySpansPhysicalNumaNodes (123)
-
IntegrationServicesVersionState (132)
-
Isso corresponde à propriedade IntegrationServicesVersionState da classe Msvm_SummaryInformation .
-
OtherEnabledState (132)
-
Isso corresponde à propriedade OtherEnabledState da classe Msvm_SummaryInformation .
-
(133)
SummaryInformation [out]
Tipo: Msvm_SummaryInformationBase[]
Uma matriz de instâncias de Msvm_SummaryInformationBase que contém as informações solicitadas para as máquinas virtuais e/ou instantâneos especificados na matriz SettingData . Essa matriz terá o mesmo número de elementos que a matriz SettingData . Cada uma dessas entradas conterá a propriedade Name , mesmo que essa propriedade não tenha sido solicitada. Se a máquina virtual ou instantâneo não puder ser encontrada ou não estiver disponível, a propriedade Name da entrada de informações de resumo correspondente estará vazia.
As propriedades não especificadas no parâmetro RequestedInformation terão um valor Null .
Observação
Tipo de dados atualizado de no Windows 10, versão 1703 do Msvm_SummaryInformation.
Valor retornado
Tipo: uint32
Esse método retorna um dos valores a seguir.
-
Concluído sem erro (0)
-
Parâmetros de método verificados – Trabalho iniciado (4096)
-
Falha (32768)
-
Acesso negado (32769)
-
Sem suporte (32770)
-
O status é desconhecido (32771)
-
Tempo limite (32772)
-
Parâmetro inválido (32773)
-
O sistema está em uso (32774)
-
Estado inválido para esta operação (32775)
-
Tipo de dados incorreto (32776)
-
O sistema não está disponível (32777)
-
Sem memória (32778)
Comentários
O acesso à classe Msvm_VirtualSystemManagementService pode ser restrito pela Filtragem UAC. Para obter mais informações, consulte Controle de Conta de Usuário e WMI.
Exemplos
O exemplo de C# a seguir exibe informações resumidas. Os utilitários referenciados podem ser encontrados em utilitários comuns para os exemplos de virtualização (V2).
Importante
Para funcionar corretamente, o código a seguir deve ser executado no servidor host da máquina virtual e deve ser executado com privilégios de administrador.
public class GetSummaryInformationClassV2
{
public static void GetSummaryInformation(string[] vmNames)
{
ManagementScope scope = new ManagementScope(@"root\virtualization\v2", null);
ManagementObject virtualSystemService = Utility.GetServiceObject(scope, "Msvm_VirtualSystemManagementService");
ManagementBaseObject inParams = virtualSystemService.GetMethodParameters("GetSummaryInformation");
ManagementObject[] virtualSystemSettings = new ManagementObject[vmNames.Length];
for (int i = 0; i < vmNames.Length; i++)
{
virtualSystemSettings[i] = GetVirtualSystemSetting(vmNames[i], scope);
}
UInt32[] requestedInformation = new UInt32[4];
requestedInformation[0] = 1; // ElementName
requestedInformation[2] = 103; // MemoryUsage
requestedInformation[3] = 112; // MemoryAvailable
inParams["SettingData"] = virtualSystemSettings;
inParams["RequestedInformation"] = requestedInformation;
ManagementBaseObject outParams = virtualSystemService.InvokeMethod("GetSummaryInformation", inParams, null);
if ((UInt32)outParams["ReturnValue"] == ReturnCode.Completed)
{
Console.WriteLine("Summary information was retrieved successfully.");
ManagementBaseObject[] summaryInformationArray =
(ManagementBaseObject[])outParams["SummaryInformation"];
foreach (ManagementBaseObject summaryInformation in summaryInformationArray)
{
Console.WriteLine("\nVirtual System Summary Information:");
if ((null == summaryInformation["Name"]) ||
(summaryInformation["Name"].ToString().Length == 0))
{
Console.WriteLine("\tThe VM or snapshot could not be found.");
}
else
{
Console.WriteLine("\tName: {0}", summaryInformation["Name"].ToString());
foreach (UInt32 requested in requestedInformation)
{
switch (requested)
{
case 1:
Console.WriteLine("\tElementName: {0}", summaryInformation["ElementName"].ToString());
break;
case 103:
Console.WriteLine("\tMemoryUsage: {0}", summaryInformation["MemoryUsage"].ToString());
break;
case 112:
Console.WriteLine("\tMemoryAvailable: {0}", summaryInformation["MemoryAvailable"].ToString());
break;
}
}
}
}
}
else
{
Console.WriteLine("Failed to retrieve virtual system summary information");
}
inParams.Dispose();
outParams.Dispose();
virtualSystemService.Dispose();
}
public static ManagementObject GetVirtualSystemSetting(string vmName, ManagementScope scope)
{
ManagementObject virtualSystem = Utility.GetTargetComputer(vmName, scope);
ManagementObjectCollection virtualSystemSettings = virtualSystem.GetRelated
(
"Msvm_VirtualSystemSettingData",
"Msvm_SettingsDefineState",
null,
null,
"SettingData",
"ManagedElement",
false,
null
);
ManagementObject virtualSystemSetting = null;
foreach (ManagementObject instance in virtualSystemSettings)
{
virtualSystemSetting = instance;
break;
}
return virtualSystemSetting;
}
}
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte |
Windows 8 [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte |
Windows Server 2012 [somente aplicativos da área de trabalho] |
Namespace |
Root\Virtualization\V2 |
MOF |
|
DLL |
|