2009-11-27 4 views
2

Je suis en train de créer une application de contrôle C# qui utilise WMI pour récupérer des informations sur les performances d'un ordinateur distant. Par exemple, vous pouvez charger le CPU à partir de la propriété "LoadPercentage" avec la requête "SELECT * FROM". Win32_Processor ".Quelles sont les requêtes WMI courantes

Quelles sont quelques autres propriétés utiles & requêtes?

+0

J'aime interroger le temps de fonctionnement du système, mais c'est mon parti pris Linux à venir. –

Répondre

2

Je pense que c'est un peu compliqué de recommander quelques classes en particulier parce que le WMI est vaste et dépend du type d'information que vous souhaitez obtenir.

Ma recommandation est que vous voyez les liens suivants.

+0

C'est le problème, il est si vaste qu'il est difficile de trouver des données pertinentes. Je cherche des statistiques telles que le chargement de cpu/l'utilisation de RAM/l'espace libre de hdd que n'importe quel utilisateur d'ordinateur comprendra. Statistiques liées aux performances. Ou même des informations générales. Temps d'activité de l'ordinateur, utilisation du réseau, fuseau horaire/heure actuelle sur le PC. Juste tout ce qui est facilement interprétable et pourrait être utile dans le diagnostic ou la surveillance générale. – mike

1

Plusieurs classes sont utilisées pour ce que vous demandez. Je pense qu'un bon point de départ est de séparer vos classes (principalement) statiques de vos classes de performance.

statique

  • système informatique - Win32_ComputerSystem
  • Système d'exploitation - Win32_OperatingSystem
  • Processeur Info - Win32_Processor
  • HDD - Win32_DiskDrive
  • partitions de disque - Win32_DiskPartition
  • disques logiques - Win32_LogicalDisk
  • disque logique à la partition - Win32_LogicalDiskToPartition
  • mémoire - Win32_PhysicalMemory, Win32_PhysicalMemoryArray
  • Réseau - Win32_NetworkAdapter (cette classe a une pénalité élevée cpu si elle est appelée trop souvent), Win32_NetworkAdapterConfiguration

compteurs de performance

  • Processor Utilization - Win32_PerfRawData_PerfOS_Processor
  • Utilisation de la mémoire - Win32_PerfRawData_PerfO S_Memory
  • Utilisation du réseau - Win32_PerfRawData_Tcpip_NetworkInterface

Il y a beaucoup plus, mais ceux-ci couvrira ce que vous demandez.

0

Vous pouvez également utiliser Win32_Products.

Ceci vous donne tous les logiciels installés sur la machine. Vous pouvez utiliser WMI pour réparer/désinstaller ces produits. Très utile sur les machines distantes.

+0

Cette classe a une pénalité de haute performance. Interroger les clés de registre à '" "HKLM \ Software \ Microsoft \ Windows \ CurrentVersion \ Uninstall \" 'est une bonne alternative. – kevmar

Questions connexes