#cs ---------------------------------------------------------------------------- AutoIt Version: 3.3.14.2 Author: Amesam Script Function: WMI Hardwares Request Purpose: Get informations from the Hardwares Note: Every Function returns a MsgBox client pris en charge minimum ;==> Windows Vista serveur minimale prise en charge ;==> Windows Server 2008 namespace ;==> Root \ CIMV2 MOF ;==> CIMWin32.mof DLL ;==> Cimwin32.dll ;==> Support AutoIt ScriptOMatic _WinClaasOperatingSystem() _OperatingSystem() _FreeMem() _WinClassesBios() _BIOS() _SMBIOSP() _BIOS_SoftwareElementState() _BIOSCharacteristics() _WinClassesBaseBoard() _BaseBoard() _HostingBoard() _HotSwappable() _Removable() _Replaceable() _WinClassesProcessor() _Processor() _TypeProc() _VirtualFirWareProc() _VMVirtualProcess() _StatuInfoProc() _PhysicalMemory() _GETDOSOUTPUT($COMMAND) _WinClassesVideoController() _VideoController() WMIDateStringToDate($dtmDate) _VideoArchitecture() _AcceleratorCapabilities() _Availability() _VideoMemoryType() _ConfigVideoUser() _ConfigManagerErrorCode() #ce ---------------------------------------------------------------------------- AutoItSetOption("MustDeclareVars", 1) Global $Fabr, $SortieWMI_OperatingSystem, $NumberOfLicensedUsers, $NumberOfProcesses, $NumberOfUsers, $Produit, $Caption, $SWMI, $SortieWMIRF, $SortieWMI_Bios, $Statut, $FreePhysicalMemory, $FreeSpaceInPagingFiles, $FreeVirtualMemory Global $Bios, $Bios_LangageEdit, $Bios_NumSerie, $Bios_Statut, $Bios_Caracteristique, $Bios_OutSWMI, $Bios_OutOBJ, $FPMem, $ResutFreePhyMem, $FSpacePF, $ResultFreeSpacePF, $FreeVirtualMem, $ResultFreeVirtualMem Global $Bios_SMBIOSDispo, $SMBIOS_VSysMesure, $SMBIOS_NDispo, $Bios_ELIDepl, $Bios_ELIInst, $Bios_ELIExectable, $Bios_ELIExecution, $SortieWMI_Video Global $OutputBios_0, $OutputBios_1, $OutputBios_2, $OutputBios_3, $OutputBios_4, $OutputBios_5, $OutputBios_6, $OutputBios_7, $OutputBios_8, $OutputBios_9, $OutputBios_10, $OutputBios_11, $OutputBios_12, $OutputBios_13, $OutputBios_14 Global $OutputBios_15, $OutputBios_16, $OutputBios_17, $OutputBios_18, $OutputBios_19, $OutputBios_20, $OutputBios_21, $OutputBios_22, $OutputBios_23, $OutputBios_24, $OutputBios_25, $OutputBios_26, $OutputBios_27, $OutputBios_28 Global $OutputBios_29, $OutputBios_30, $OutputBios_31, $OutputBios_32, $OutputBios_33, $OutputBios_34, $OutputBios_35, $OutputBios_36, $OutputBios_37, $OutputBios_38, $OutputBios_39, $OutputBios_40_47, $OutputBios_48_63 Global $BBoard_SWMI, $SortieWMI_BaseBoard, $VersBoard, $HostingBoard_true, $HostingBoard_false, $HotSwappable_true, $HotSwappable_false, $Removable_true, $Removable_false, $Replaceable_true, $Replaceable_false Global $Name, $NamePorcess, $DWitch_Process, $NbCoreProcess, $NbCorePermis, $NbCoreLogique, $IDProcess, $TypeProcess, $OutputProc_1, $OutputProc_2, $OutputProc_3, $OutputProc_4, $OutputProc_5, $OutputProc_6 Global $ProcVirtuel, $ProcVirtuelNot, $WMProcess, $SortieWMI_Proc, $WMProcessInfo, $Autres, $Autre, $Inconnu, $Enabled, $Disabled, $Sansobjet, $ConfigOption, $Speed Global $CMEC0, $CMEC1, $CMEC2, $CMEC3, $CMEC4, $CMEC5, $CMEC6, $CMEC7, $CMEC8, $CMEC9, $CMEC10, $CMEC11, $CMEC12, $CMEC13, $CMEC14, $CMEC15, $CMEC16, $CMEC17, $CMEC18, $CMEC19, $CMEC20, $CMEC21, $CMEC22, $CMEC23, $CMEC24, $CMEC25, $CMEC26, $CMEC27, $CMEC28, $CMEC29, $CMEC30, $CMEC31 Global $Accelerateur3D, $AccelerateurGraph, $ArchVideo, $Availability3, $Availability4, $Availability5, $Availability6, $Availability7, $Availability8, $Availability9, $Availability10, $Availability11, $Availability12, $Availability13, $Availability14, $Availability15, $Availability16, $Availability17, $Availability18, $Availability19, $Availability20, $Availability21 Global $SortieWMI_PhysicalMemory, $VideoMemoryType, $ControlVideo, $Capacity, $CMECWIN32, $ConfigUserVideo, $CurrentBitsPerPixel, $CurrentRefreshRate, $DeviceID, $DispoVideoControl, $DriverInstall, $Used, $False, $True, $FileINF, $Free, $MemVideo, $NumSerie, $Proprio, $Reference Global $objWMIService = "" Global $colItems = "" Global $strComputer = "localhost" Global $OutputTitle = "" Global $Output = "" Global $SLANGUE = "" $OutputTitle &= "Computer: " & $strComputer & @CRLF $OutputTitle &= "==========================================" & @CRLF Select Case StringInStr("040c,080c,0c0c,100c,140c,180c", @OSLang) ; http://www.autoitscript.fr/autoit3/docs/appendix/OSLangCodes.htm $SLANGUE = "Francais" Case Else $SLANGUE = "Anglais" EndSelect Select Case $SLANGUE = "Francais" $Accelerateur3D = "Accélérateur 3D (3)" $AccelerateurGraph = "Accélérateur graphique (2)" $ArchVideo = "Type d'architecture vidéo : " $Autre = "Autre : " $Autres = "Statut Info : Autres (1)" $Availability10 = "Dégradé (10)" $Availability11 = "Non installé (11)" $Availability12 = "Erreur d'installation (12)" $Availability13 = "Économie d'énergie - Inconnu (13)" $Availability14 = "Économie d'énergie - Mode faible consommation (14)" $Availability15 = "Économie d'énergie - Veille (15)" $Availability16 = "Cycle d'alimentation (16)" $Availability17 = "Économie d'énergie - Avertissement (17)" $Availability18 = "Le dispositif est mis en pause (18)" $Availability19 = "Le dispositif est pas prêt (19)" $Availability20 = "Non configuré (20)" $Availability21 = "Suspendu (21)" $Availability3 = "Exécution / Full Power (3)" $Availability4 = "Avertissement (4)" $Availability5 = "Dans l'essai (5)" $Availability6 = "Sans objet (6)" $Availability7 = "Hors tension (7)" $Availability8 = "Hors ligne(8)" $Availability9 = "Hors service (9)" $BBoard_SWMI = " Sortie WMI pour la classe Win32_BaseBoard " $Bios = "BIOS : " $Bios_Caracteristique = "Caractéristiques du BIOS : " $Bios_ELIDepl = "État du logiciel d'installation : Déployable (0)" $Bios_ELIExectable = "État du logiciel d'installation : Executable (2)" $Bios_ELIExecution = "État du logiciel d'installation : Démarré (3)" $Bios_ELIInst = "État du logiciel d'installation : Installable (1)" $Bios_LangageEdit = "Langage Édition : " $Bios_NumSerie = "Numéro de série : " $Bios_OutOBJ = "Aucun objets WMI trouvés pour la Classe :" & "Win32_BIOS" $Bios_OutSWMI = "Aucune sortie WMI pour cette classe" $Bios_SMBIOSDispo = "SMBIOS : Disponible " $Capacity = "Capacité : " $Caption = "Légende : " $CMEC0 = "Cet appareil fonctionne correctement. (0) " $CMEC1 = "Ce dispositif est pas configuré correctement. (1) " $CMEC10 = "Ce dispositif ne peut pas démarrer. (10) " $CMEC11 = "Ce dispositif a échoué. (11) " $CMEC12 = "Ce dispositif ne peut pas trouver suffisamment de ressources libres qu'il peut utiliser. (12) " $CMEC13 = "Windows ne peut pas vérifier les ressources de ce dispositif. (13) " $CMEC14 = "Cet appareil peut ne pas fonctionner correctement jusqu'à ce que vous redémarrez votre ordinateur. (14) " $CMEC15 = "Ce dispositif ne fonctionne pas correctement car il y a probablement un problème ré-énumération. (15) " $CMEC16 = "Windows ne peut pas identifier toutes les ressources utilisées par ce périphérique. (16) " $CMEC17 = "Ce dispositif demande un type de ressource inconnu. (17) " $CMEC18 = "Réinstaller les pilotes de ce périphérique. (18) " $CMEC19 = "Défaut d' utiliser le chargeur VxD. (19) " $CMEC2 = "Windows ne peut pas charger le pilote de ce périphérique. (2) " $CMEC20 = "Votre Registre est peut - être corrompu. (20) " $CMEC21 = "Défaillance du système: Essayez de changer le pilote de ce périphérique. Si cela ne fonctionne pas, consultez la documentation de votre matériel. Windows supprime ce périphérique. (21) " $CMEC22 = "Ce périphérique est désactivé. (22) " $CMEC23 = "Défaillance du système: Essayez de changer le pilote de ce périphérique. Si cela ne fonctionne pas, consultez la documentation de votre matériel. (23)" $CMEC24 = "Ce dispositif est pas présent, ne fonctionne pas correctement, ou ne possède pas tous ses pilotes installés. (24) " $CMEC25 = "Windows est toujours en place ce dispositif. (25) " $CMEC26 = "Windows est toujours en place ce dispositif. (26) " $CMEC27 = "Ce dispositif n'a pas la configuration de journal valide. (27) " $CMEC28 = "Les pilotes de ce périphérique ne sont pas installés. (28) " $CMEC29 = "Ce périphérique est désactivé car le firmware de l'appareil ne lui donne pas les ressources nécessaires. (29) " $CMEC3 = "Le pilote de ce périphérique peut être endommagé ou votre système peut être à court de mémoire ou d' autres ressources. (3) " $CMEC30 = "Cet appareil utilise une demande d' interruption (IRQ) ressources qu'un autre périphérique utilise. (30) " $CMEC31 = "Ce dispositif ne fonctionne pas correctement car Windows ne peut pas charger les pilotes requis pour ce périphérique. (31) " $CMEC4 = "Ce dispositif ne fonctionne pas correctement. L' un de ses pilotes ou votre registre peut - être endommagé. (4) " $CMEC5 = "Le pilote de ce périphérique a besoin d' une ressource que Windows ne peut pas gérer. (5) " $CMEC6 = "La configuration de démarrage de ce périphérique est en conflit avec d' autres appareils. (6) " $CMEC7 = "Vous ne pouvez pas filtrer. (7) " $CMEC8 = "Le chargeur de pilote pour le périphérique est manquant. (8) " $CMEC9 = "Ce dispositif ne fonctionne pas correctement parce que le firmware de contrôle signale les ressources de l'appareil de manière incorrecte. (9) " $CMECWIN32 = "Win32 Configuration Manager code d'erreur : " $ConfigOption = "Options de configuration" $ConfigUserVideo = "Configuration définie par l' utilisateur : " $ControlVideo = "Contrôleur vidéo et graphiques : " $CurrentBitsPerPixel = "Nombre de bits utilisés pour afficher chaque pixel : " $CurrentRefreshRate = "Fréquence à laquelle le contrôleur vidéo rafraîchit l'image : " $DeviceID = "Référence de l'appareil : " $Disabled = "Statut Info : Désactivé (4)" $DispoVideoControl = "Disponibilité et état de l'appareil : " $DriverInstall = "Nom du pilote de périphérique d'affichage installé : " $DWitch_Process = "Processeur : " $Enabled = "Statut Info : Activé (3)" $Fabr = "Fabriquant : " $False = "Faux" $FileINF = "Fichier .inf : " $Free = "Libre : " $FreePhysicalMemory = "Mémoire physique actuellement inutilisée et disponible : " $FreeSpaceInPagingFiles = "Mappage dans les fichiers d'échange du système d'exploitation sans provoquer d'autres pages à être échangé :" $FreeVirtualMemory = "Mémoire virtuelle actuellement inutilisée et disponible : " $HostingBoard_false = "la carte n'est une carte mère, ou une carte de base dans un châssis : " $HostingBoard_true = "la carte est une carte mère, ou une carte de base dans un châssis : " $HotSwappable_false = "le paquet ne peut pas être remplacé à chaud : " $HotSwappable_true = "le paquet peut être remplacé à chaud : " $IDProcess = "Identifiant du processeur : " $Inconnu = "Statut Info : Inconnu (2)" $MemVideo = "Taille de la mémoire de la carte vidéo : " $Name = "Nom : " $NbCoreLogique = "Nombre de Processeurs Logiques : " $NbCorePermis = "Nombre de coeurs admis : " $NbCoreProcess = "Nombre de coeurs : " $NumberOfLicensedUsers = "Nombre de licences utilisateur pour le système d'exploitation. Si illimité, 0 (zéro). Si inconnu, -1 : " $NumberOfProcesses = "Nombre de contextes de processus actuellement chargé ou exécuté sur le système d'exploitation : " $NumberOfUsers = "Nombre de sessions utilisateur pour lequel le système d'exploitation est le stockage des informations d'état actuellement : " $NumSerie = "Numéro de série :" $OutputBios_0 = "- Réservé (0)" $OutputBios_1 = "- Réservé (1)" $OutputBios_10 = "- APM est pris en charge (10)" $OutputBios_11 = "- BIOS est actualisable (Flash) (11)" $OutputBios_12 = "- Observation du BIOS est autorisé (12)" $OutputBios_13 = "- VL-VESA est pris en charge (13)" $OutputBios_14 = "- Support ESCD est disponible (14)" $OutputBios_15 = "- Boot from CD est pris en charge (15)" $OutputBios_16 = "- Boot sélectionnable est pris en charge (16)" $OutputBios_17 = "- BIOS ROM est connectable (17)" $OutputBios_18 = "- Boot De PC Card (PCMCIA) est prise en charge (18)" $OutputBios_19 = "- EDD (Enhanced Disk Drive) Spécification est prise en charge (19)" $OutputBios_2 = "- Inconnu (2)" $OutputBios_20 = "- Int 13h - Floppy japonais pour NEC 9800 1.2mb (3,5 \ , 1k octets / secteur, 360 RPM) est pris en charge(20) " $OutputBios_21 = "- Int 13h - Floppy japonais pour Toshiba 1.2mb (3,5 \ , 360 RPM) est pris en charge(21) " $OutputBios_22 = "- Int 13h - 5,25 \ / 360 KB Floppy services sont pris en charge(22) " $OutputBios_23 = "- Int 13h - 5,25 \ / 1.2MB services Floppy sont pris en charge(23) " $OutputBios_24 = "- Int 13h - 3,5 \ / 720 KB Floppy services sont pris en charge(24) " $OutputBios_25 = "- Int 13h - 3,5 \ / 2.88 MB Floppy services sont pris en charge(25) " $OutputBios_26 = "- Int 5h, service d' impression écran est prise en charge (26)" $OutputBios_27 = "- Int 9H, 8042 services de clavier sont pris en charge (27)" $OutputBios_28 = "- Int 14h, services de série sont pris en charge (28)" $OutputBios_29 = "- Int 17h, les services d'impression sont pris en charge (29)" $OutputBios_3 = "- BIOS Caractéristiques non pris en charge (3)" $OutputBios_30 = "- Int 10h, CGA / Mono services vidéo sont pris en charge (30)" $OutputBios_31 = "- NEC PC-98 (31)" $OutputBios_32 = "- ACPI pris en charge (32)" $OutputBios_33 = "- Legacy USB est prise en charge (33)" $OutputBios_34 = "- AGP est prise en charge (34)" $OutputBios_35 = "- I2O boot est prise en charge (35)" $OutputBios_36 = "- LS-120 boot est prise en charge (36)" $OutputBios_37 = "- ATAPI lecteur ZIP boot est pris en charge (37)" $OutputBios_38 = "- 1394 boot est pris en charge (38)" $OutputBios_39 = "- Smart Battery prise en charge (39)" $OutputBios_4 = "- ISA est pris en charge (4)" $OutputBios_40_47 = "- Réservé aux fournisseurs de BIOS (40 - 47)" $OutputBios_48_63 = "- Réservé aux fournisseurs Système (48 - 63)" $OutputBios_5 = "- MCA est pris en charge (5)" $OutputBios_6 = "- EISA est pris en charge (6)" $OutputBios_7 = "- PCI est pris en charge (7)" $OutputBios_8 = "- PC Card (PCMCIA) est pris en charge (8)" $OutputBios_9 = "- Plug and Play est pris en charge (9)" $OutputProc_1 = "Autres (1)" $OutputProc_2 = "Inconnu (2)" $OutputProc_3 = "Processeur central (3)" $OutputProc_4 = "Math Processeur (4)" $OutputProc_5 = "DSP Processeur (5)" $OutputProc_6 = "Processeur vidéo (6)" $ProcVirtuel = "Le firmware a permis les extensions de virtualisation : " $ProcVirtuelNot = "Le firmware n'est pas permis pour les extensions de virtualisation : " $Produit = "Produit : " $Proprio = "Propriètaire : " $Reference = "Référence : " $Removable_false = "L'emballage physique n'est pas amovible : " $Removable_true = "L'emballage physique est amovible : " $Replaceable_false = "Paquet physique non remplaçable : " $Replaceable_true = "Paquet physique remplaçable : " $Sansobjet = "Statut Info : Sans objet (5)" $SMBIOS_NDispo = "SMBIOS Non disponible : " $SMBIOS_VSysMesure = "SMBIOS : Version du système de mesure : " $SortieWMI_BaseBoard = "Sortie WMI : Aucun objets WMI trouvés pour la Classe : Win32_BaseBoard" $SortieWMI_Bios = "Sortie WMI : Aucun objets WMI trouvés pour la Classe : Win32_BIOS" $SortieWMI_OperatingSystem = "Sortie WMI : Aucun objets WMI trouvés pour la Classe : Win32_OperatingSystem" $SortieWMI_PhysicalMemory = "Sortie WMI : Aucun objets WMI trouvés pour la Classe : PhysicalMemory" $SortieWMI_Proc = "Sortie WMI : Aucun objets WMI trouvés pour la Classe : Win32_Processor" $SortieWMI_Video = "Sortie WMI : Aucun objets WMI trouvés pour la Classe : Win32_VideoController" $SortieWMIRF = "Sortie WMI refusée" $Speed = "Vitesse mémoire : " $Statut = "Statut : " $SWMI = " Sortie WMI pour la classe : " $True = "Vrai" $TypeProcess = "Type du processeur : " $Used = "Utilisée : " $VersBoard = "Version : " $VideoMemoryType = "Type de mémoire vidéo : " $WMProcess = "le processeur prend en charge les machines virtuelles pour Intel ou AMD Virtual Machine Monitor extensions : " $WMProcessInfo = "Information : Cette propriété n'est pas supportée avant Windows 8 et Windows Serveur 2012. " EndSelect Select Case $SLANGUE = "Anglais" $CMECWIN32 = "Win32 Configuration Manager error code : " $Accelerateur3D = "3D Accelerator (3)" $AccelerateurGraph = "Graphics Accelerator (2)" $ArchVideo = "Type of video architecture. : " $Autre = "Other : " $Autres = "Status Info : Other (1)" $Availability10 = "Degraded (10)" $Availability11 = "Not Installed (11)" $Availability12 = "Install Error (12)" $Availability13 = "Power Save - Unknown (13)" $Availability14 = "Power Save - Low Power Mode (14)" $Availability15 = "Power Save - Standby (15)" $Availability16 = "Power Cycle (16)" $Availability17 = "Power Save - Warning (17)" $Availability18 = "Paused (18)" $Availability19 = "Paused (18)" $Availability20 = "Not Configured (20)" $Availability21 = "Quiesced (21)" $Availability3 = "Running/Full Power (3)" $Availability4 = "Warning (4)" $Availability5 = "DIn Test (5)" $Availability6 = "Not Applicable (6)" $Availability7 = "Power Off (7)" $Availability8 = "Off Line (8)" $Availability9 = "Off Duty (9)" $BBoard_SWMI = " WMI class output for Win32_BaseBoard " $Bios = "BIOS : " $Bios_Caracteristique = "BIOS Features : " $Bios_ELIDepl = "State of the installation software : Déployable (0)" $Bios_ELIExectable = "State of the installation software : Executable (2)" $Bios_ELIExecution = "State of the installation software : Running (3)" $Bios_ELIInst = "State of the installation software : Installable (1)" $Bios_LangageEdit = "Language Edition : " $Bios_NumSerie = "Numéro de série : " $Bios_OutOBJ = "No items found for WMI Class :" & "Win32_BIOS" $Bios_OutSWMI = "No WMI output for this class" $Bios_SMBIOSDispo = "SMBIOS : Available " $Capacity = "Capacity : " $Caption = "Legend : " $CMEC0 = "This device is working properly. (0) " $CMEC1 = "This device is not configured correctly. (1) " $CMEC10 = "This device cannot start. (10) " $CMEC11 = "This device failed. (11) " $CMEC12 = "This device cannot find enough free resources that it can use. (12) " $CMEC13 = "Windows cannot verify this device's resources. (13) " $CMEC14 = "This device cannot work properly until you restart your computer. (14) " $CMEC15 = "This device is not working properly because there is probably a re-enumeration problem. (15) " $CMEC16 = "Windows cannot identify all the resources this device uses. (16) " $CMEC17 = "This device is asking for an unknown resource type. (17) " $CMEC18 = "Reinstall the drivers for this device. (18) " $CMEC19 = "Failure using the VxD loader. (19) " $CMEC2 = "Windows cannot load the driver for this device. (2) " $CMEC20 = "Your registry might be corrupted. (20) " $CMEC21 = "System failure: Try changing the driver for this device. If that does not work, see your hardware documentation. Windows is removing this device. (21) " $CMEC22 = "This device is disabled. (22) " $CMEC23 = "System failure: Try changing the driver for this device. If that doesn't work, see your hardware documentation. (23) " $CMEC24 = "This device is not present, is not working properly, or does not have all its drivers installed. (24) " $CMEC25 = "Windows is still setting up this device. (25) " $CMEC26 = "Windows is still setting up this device. (26) " $CMEC27 = "This device does not have valid log configuration. (27) " $CMEC28 = "The drivers for this device are not installed. (28) " $CMEC29 = "This device is disabled because the firmware of the device did not give it the required resources. (29) " $CMEC3 = "The driver for this device might be corrupted, or your system may be running low on memory or other resources. (3) " $CMEC30 = "This device is using an Interrupt Request (IRQ) resource that another device is using. (30) " $CMEC31 = "This device is not working properly because Windows cannot load the drivers required for this device. (31) " $CMEC4 = "This device is not working properly. One of its drivers or your registry might be corrupted. (4) " $CMEC5 = "The driver for this device needs a resource that Windows cannot manage. (5) " $CMEC6 = "The boot configuration for this device conflicts with other devices. (6) " $CMEC7 = "Cannot filter. (7) " $CMEC8 = "The driver loader for the device is missing. (8) " $CMEC9 = "This device is not working properly because the controlling firmware is reporting the resources for the device incorrectly. (9) " $ConfigOption = "Config Options: " $ConfigUserVideo = "Configuration définie par l' utilisateur : " $ControlVideo = "Capabilities of the video controller : " $CurrentBitsPerPixel = "Number of bits used to display each pixel : " $CurrentRefreshRate = "Frequency at which the video controller refreshes the image : " $DeviceID = "Reference of the device : " $Disabled = "Status Info : Disabled (4)" $DispoVideoControl = "Availability and status of the device : " $DriverInstall = "Name of the installed display device driver : " $DWitch_Process = "Processor : " $Enabled = "Status Info : Enabled (3)" $Fabr = "Manufacturer : " $FileINF = "File .inf : " $Free = "Free : " $FreePhysicalMemory = "Number, in GB, of physical memory currently unused and available : " $FreeSpaceInPagingFiles = "Number, in GB, that can be mapped into the operating system paging files without causing any other pages to be swapped out : " $FreeVirtualMemory = "Number, in GB, of virtual memory currently unused and available : " $HostingBoard_false = "The card is not a motherboard, or a baseboard in a chassis : " $HostingBoard_true = "The card is a motherboard, or a baseboard in a chassis : " $HotSwappable_false = "The packet can not be hot-swapped : " $HotSwappable_true = "The package can be hot-swapped : " $IDProcess = "Processor Id : " $Inconnu = "Status Info : Unknown (2)" $MemVideo = "Memory size of the video adapter : " $Name = "Name : " $NbCoreLogique = "Number Of Logical Processors : " $NbCorePermis = "Number Of Enabled Core : " $NbCoreProcess = "Number Of Cores : " $NumberOfLicensedUsers = "Number of user licenses for the operating system. If unlimited, enter 0 (zero). If unknown, enter -1 : " $NumberOfProcesses = "Number of process contexts currently loaded or running on the operating system : " $NumberOfUsers = "Number of user sessions for which the operating system is storing state information currently : " $NumSerie = "SerialNumber: " $OutputBios_0 = "- Reserved (0)" $OutputBios_1 = "- Reserved (1)" $OutputBios_10 = "- APM is supported (10)" $OutputBios_11 = "- BIOS is Upgradeable (Flash) (11)" $OutputBios_12 = "- BIOS shadowing is allowed (12)" $OutputBios_13 = "- VL-VESA is supported (13)" $OutputBios_14 = "- ESCD support is available (14)" $OutputBios_15 = "- Boot from CD is supported (15)" $OutputBios_16 = "- Selectable Boot is supported (16)" $OutputBios_17 = "- BIOS ROM is socketed (17)" $OutputBios_18 = "- Boot From PC Card (PCMCIA) is supported (18)" $OutputBios_19 = "- EDD (Enhanced Disk Drive) Specification is supported (19)" $OutputBios_2 = "- Unknown (2)" $OutputBios_20 = "- Int 13h - Floppy japonais pour NEC 9800 1.2mb (3,5 \ , 1k octets / secteur, 360 RPM) is supported (20) " $OutputBios_21 = "- Int 13h - Floppy japonais pour Toshiba 1.2mb (3,5 \ , 360 RPM) is supported (21) " $OutputBios_22 = "- Int 13h - 5,25 \ / 360 KB Floppy Services are supported (22) " $OutputBios_23 = "- Int 13h - 5,25 \ / 1.2MB Floppy Services are supported (23) " $OutputBios_24 = "- Int 13h - 3,5 \ / 720 KB Floppy Services are supported (24) " $OutputBios_25 = "- Int 13h - 3,5 \ / 2.88 MB Floppy Services are supported (25) " $OutputBios_26 = "- Int 5h, Print Screen Service is supported (26)" $OutputBios_27 = "- Int 9h, 8042 Keyboard services are supported (27)" $OutputBios_28 = "- Int 14h, Serial Services are supported (28)" $OutputBios_29 = "- Int 17h, printer services are supported (29)" $OutputBios_3 = "- BIOS Characteristics Not Supported (3)" $OutputBios_30 = "- Int 10h, CGA/Mono Video Services are supported (30)" $OutputBios_31 = "- NEC PC-98 (31)" $OutputBios_32 = "- ACPI supported (32)" $OutputBios_33 = "- Legacy USB is supported (33)" $OutputBios_34 = "- AGP is supported (34)" $OutputBios_35 = "- I2O boot is supported (35)" $OutputBios_36 = "- LS-120 boot is supported (36)" $OutputBios_37 = "- ATAPI ZIP Drive boot is supported (37)" $OutputBios_38 = "- 1394 boot is supported (38)" $OutputBios_39 = "- Smart Battery supported (39)" $OutputBios_4 = "- ISA is supported (4)" $OutputBios_40_47 = "- Reserved for BIOS vendor (40 - 47)" $OutputBios_48_63 = "- Reserved for system vendor (48 - 63)" $OutputBios_5 = "- MCA is supported (5)" $OutputBios_6 = "- EISA is supported (6)" $OutputBios_7 = "- PCI is supported (7)" $OutputBios_8 = "- PC Card (PCMCIA) is supported (8)" $OutputBios_9 = "- Plug and Play is supported (9)" $OutputProc_1 = "Other (1)" $OutputProc_2 = "Unknown (2)" $OutputProc_3 = "Central Processor (3)" $OutputProc_4 = "Math Processor (4)" $OutputProc_5 = "DSP Processor (5)" $OutputProc_6 = "Video Processor (6)" $ProcVirtuel = "The Firmware has enabled virtualization extensions : " $ProcVirtuelNot = "Le Firmware has not enabled virtualization extensions : " $Produit = "Product : " $Proprio = "Proprietary : " $Reference = "PartNumber : " $Removable_false = "package is not removable : " $Removable_true = "Package is removable : " $Replaceable_false = "Package is not removable : " $Replaceable_true = "Package is removable : " $Sansobjet = "Status Info : Not Applicable (5)" $SMBIOS_NDispo = "SMBIOS Not available : " $SMBIOS_VSysMesure = "Version of the measuring system : " $SortieWMIRF = "WMI exit denied" $SortieWMI_BaseBoard = "WMI Released: No WMI items found for the class: Win32_BaseBoard" $SortieWMI_Bios = "WMI Released: No WMI items found for the class: Win32_BIOS" $SortieWMI_OperatingSystem = "WMI Released: No WMI items found for the class: Win32_OperatingSystem" $SortieWMI_PhysicalMemory = "WMI Released: No WMI items found for the class: PhysicalMemory" $SortieWMI_Proc = "WMI Released: No WMI items found for the class: Win32_Processor" $SortieWMI_Video = "WMI Released: No WMI items found for the class: Win32_VideoController" $Speed = "Speed : " $Statut = "Status : " $SWMI = " WMI class output for : " $TypeProcess = "Processor Type : " $Used = "Used : " $VersBoard = "Version: " $VideoMemoryType = "Type of video memory : " $WMProcess = "The processor supports Intel or AMD Virtual Machine Monitor extensions. : " $WMProcessInfo = "Information : This property is not supported before Windows 8 and Windows Server 2012" EndSelect If @OSVersion > "WIN_VISTA" and "WIN_2008" Then MsgBox(0, "WMI Hardwares", "Vista ou Windows Server 2008 minimum") EndIf #cs ---------------------------------------------------------------------------- Win32_BIOS class _Win32_BIOS() Functions: _WinClaasOperatingSystem() _OperatingSystem() _FreeMem() "BootDevice: " & $objItem.BootDevice & @CRLF "BuildNumber: " & $objItem.BuildNumber & @CRLF "BuildType: " & $objItem.BuildType & @CRLF "Caption: " & $objItem.Caption & @CRLF "CodeSet: " & $objItem.CodeSet & @CRLF "CountryCode: " & $objItem.CountryCode & @CRLF "CreationClassName: " & $objItem.CreationClassName & @CRLF "CSCreationClassName: " & $objItem.CSCreationClassName & @CRLF "CSDVersion: " & $objItem.CSDVersion & @CRLF "CSName: " & $objItem.CSName & @CRLF "CurrentTimeZone: " & $objItem.CurrentTimeZone & @CRLF "DataExecutionPrevention_32BitApplications: " & $objItem.DataExecutionPrevention_32BitApplications & @CRLF "DataExecutionPrevention_Available: " & $objItem.DataExecutionPrevention_Available & @CRLF "DataExecutionPrevention_Drivers: " & $objItem.DataExecutionPrevention_Drivers & @CRLF "DataExecutionPrevention_SupportPolicy: " & $objItem.DataExecutionPrevention_SupportPolicy & @CRLF "Debug: " & $objItem.Debug & @CRLF "Description: " & $objItem.Description & @CRLF "Distributed: " & $objItem.Distributed & @CRLF "EncryptionLevel: " & $objItem.EncryptionLevel & @CRLF "ForegroundApplicationBoost: " & $objItem.ForegroundApplicationBoost & @CRLF "FreePhysicalMemory: " & $objItem.FreePhysicalMemory & @CRLF "FreeSpaceInPagingFiles: " & $objItem.FreeSpaceInPagingFiles & @CRLF "FreeVirtualMemory: " & $objItem.FreeVirtualMemory & @CRLF "InstallDate: " & WMIDateStringToDate($objItem.InstallDate) & @CRLF "LargeSystemCache: " & $objItem.LargeSystemCache & @CRLF "LastBootUpTime: " & WMIDateStringToDate($objItem.LastBootUpTime) & @CRLF "LocalDateTime: " & WMIDateStringToDate($objItem.LocalDateTime) & @CRLF "Locale: " & $objItem.Locale & @CRLF "Manufacturer: " & $objItem.Manufacturer & @CRLF "MaxNumberOfProcesses: " & $objItem.MaxNumberOfProcesses & @CRLF "MaxProcessMemorySize: " & $objItem.MaxProcessMemorySize & @CRLF $strMUILanguages = $objItem.MUILanguages(0) "MUILanguages: " & $strMUILanguages & @CRLF "Name: " & $objItem.Name & @CRLF "NumberOfLicensedUsers: " & $objItem.NumberOfLicensedUsers & @CRLF "NumberOfProcesses: " & $objItem.NumberOfProcesses & @CRLF "NumberOfUsers: " & $objItem.NumberOfUsers & @CRLF "OperatingSystemSKU: " & $objItem.OperatingSystemSKU & @CRLF "Organization: " & $objItem.Organization & @CRLF "OSArchitecture: " & $objItem.OSArchitecture & @CRLF "OSLanguage: " & $objItem.OSLanguage & @CRLF "OSProductSuite: " & $objItem.OSProductSuite & @CRLF "OSType: " & $objItem.OSType & @CRLF "OtherTypeDescription: " & $objItem.OtherTypeDescription & @CRLF "PAEEnabled: " & $objItem.PAEEnabled & @CRLF "PlusProductID: " & $objItem.PlusProductID & @CRLF "PlusVersionNumber: " & $objItem.PlusVersionNumber & @CRLF "PortableOperatingSystem: " & $objItem.PortableOperatingSystem & @CRLF "Primary: " & $objItem.Primary & @CRLF "ProductType: " & $objItem.ProductType & @CRLF "RegisteredUser: " & $objItem.RegisteredUser & @CRLF "SerialNumber: " & $objItem.SerialNumber & @CRLF "ServicePackMajorVersion: " & $objItem.ServicePackMajorVersion & @CRLF "ServicePackMinorVersion: " & $objItem.ServicePackMinorVersion & @CRLF "SizeStoredInPagingFiles: " & $objItem.SizeStoredInPagingFiles & @CRLF "Status: " & $objItem.Status & @CRLF "SuiteMask: " & $objItem.SuiteMask & @CRLF "SystemDevice: " & $objItem.SystemDevice & @CRLF "SystemDirectory: " & $objItem.SystemDirectory & @CRLF "SystemDrive: " & $objItem.SystemDrive & @CRLF "TotalSwapSpaceSize: " & $objItem.TotalSwapSpaceSize & @CRLF "TotalVirtualMemorySize: " & $objItem.TotalVirtualMemorySize & @CRLF "TotalVisibleMemorySize: " & $objItem.TotalVisibleMemorySize & @CRLF "Version: " & $objItem.Version & @CRLF "WindowsDirectory: " & $objItem.WindowsDirectory & @CRLF #ce ---------------------------------------------------------------------------- _OperatingSystem() Func _WinClaasOperatingSystem() $objWMIService = ObjGet("winmgmts:{impersonationLevel=impersonate}!\\" & $strComputer & "\root\CIMV2") $colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_OperatingSystem", "WQL", 0x10 + 0x20) EndFunc ;==>WinClaasOperatingSystem Func _OperatingSystem() _WinClaasOperatingSystem() If IsObj($colItems) Then Local $Object_Flag = 0 For $objItem In $colItems $Object_Flag = 1 $Output &= $SWMI & "Win32_OperatingSystem" & @CRLF $Output &= "-----------------------------------------" & @CRLF & @CRLF $Output &= $Name & $objItem.Name & @CRLF $Output &= "OS Architecture : " & $objItem.OSArchitecture & @CRLF $Output &= $Fabr & $objItem.Manufacturer & @CRLF Local $strMUILanguages = $objItem.MUILanguages(0) $Output &= "MUI Languages : " & $strMUILanguages & @CRLF $Output &= "Version : " & $objItem.Version & @CRLF $Output &= "SystemDrive : " & $objItem.SystemDrive & @CRLF $Output &= "-----------------------------------------" & @CRLF & @CRLF _FreeMem() $Output &= "-----------------------------------------" & @CRLF & @CRLF $Output &= $NumberOfLicensedUsers & $objItem.NumberOfLicensedUsers & @CRLF $Output &= $NumberOfProcesses & $objItem.NumberOfProcesses & @CRLF $Output &= $NumberOfUsers & $objItem.NumberOfUsers & @CRLF If $Object_Flag = 0 Then $Output &= $SortieWMIRF & $OutputTitle & @CRLF If $Output = "" Then $Output &= $SortieWMI_OperatingSystem & @CRLF If MsgBox(64, "", $Output) = 2 Then ExitLoop Next EndIf EndFunc ;==>_OperatingSystem Func _FreeMem() _WinClaasOperatingSystem() For $objItem In $colItems $FPMem = $objItem.FreePhysicalMemory / 1024 ^ 2 $ResutFreePhyMem = StringLeft($FPMem, 5) $Output &= $FreePhysicalMemory & $ResutFreePhyMem & " - GO" & @CRLF $FSpacePF = $objItem.FreeSpaceInPagingFiles / 1024 ^ 2 $ResultFreeSpacePF = StringLeft($FSpacePF, 5) $Output &= $FreeSpaceInPagingFiles & $ResultFreeSpacePF & " - GO" & @CRLF $FreeVirtualMem = $objItem.FreeVirtualMemory / 1024 ^ 2 $ResultFreeVirtualMem = StringLeft($FreeVirtualMem, 5) $Output &= $FreeVirtualMemory & $ResultFreeVirtualMem & " - GO" & @CRLF Next EndFunc ;==>FreeMem #cs ---------------------------------------------------------------------------- Win32_BIOS class _Win32_BIOS() Functions: _WinClassesBios() _Win32_BIOS() _SMBIOSP() _BIOS_SoftwareElementState() _BIOSCharacteristics() $strBiosCharacteristics = $objItem.BiosCharacteristics(0) "BiosCharacteristics: " & $strBiosCharacteristics & @CRLF $strBIOSVersion = $objItem.BIOSVersion(0) "BIOSVersion: " & $strBIOSVersion & @CRLF "BuildNumber: " & $objItem.BuildNumber & @CRLF "Caption: " & $objItem.Caption & @CRLF "CodeSet: " & $objItem.CodeSet & @CRLF "CurrentLanguage: " & $objItem.CurrentLanguage & @CRLF "Description: " & $objItem.Description & @CRLF "EmbeddedControllerMajorVersion: " & $objItem.EmbeddedControllerMajorVersion & @CRLF "EmbeddedControllerMinorVersion: " & $objItem.EmbeddedControllerMinorVersion & @CRLF "IdentificationCode: " & $objItem.IdentificationCode & @CRLF "InstallableLanguages: " & $objItem.InstallableLanguages & @CRLF "InstallDate: " & WMIDateStringToDate($objItem.InstallDate) & @CRLF "LanguageEdition: " & $objItem.LanguageEdition & @CRLF $strListOfLanguages = $objItem.ListOfLanguages(0) "ListOfLanguages: " & $strListOfLanguages & @CRLF "Manufacturer: " & $objItem.Manufacturer & @CRLF "Name: " & $objItem.Name & @CRLF "OtherTargetOS: " & $objItem.OtherTargetOS & @CRLF "PrimaryBIOS: " & $objItem.PrimaryBIOS & @CRLF "ReleaseDate: " & WMIDateStringToDate($objItem.ReleaseDate) & @CRLF "SerialNumber: " & $objItem.SerialNumber & @CRLF "SMBIOSBIOSVersion: " & $objItem.SMBIOSBIOSVersion & @CRLF "SMBIOSMajorVersion: " & $objItem.SMBIOSMajorVersion & @CRLF "SMBIOSMinorVersion: " & $objItem.SMBIOSMinorVersion & @CRLF "SMBIOSPresent: " & $objItem.SMBIOSPresent & @CRLF "SoftwareElementID: " & $objItem.SoftwareElementID & @CRLF "SoftwareElementState: " & $objItem.SoftwareElementState & @CRLF "Status: " & $objItem.Status & @CRLF "SystemBiosMajorVersion: " & $objItem.SystemBiosMajorVersion & @CRLF "SystemBiosMinorVersion: " & $objItem.SystemBiosMinorVersion & @CRLF "TargetOperatingSystem: " & $objItem.TargetOperatingSystem & @CRLF "Version: " & $objItem.Version & @CRLF #ce ---------------------------------------------------------------------------- ;~ _BIOS() Func _WinClassesBios() $objWMIService = ObjGet("winmgmts:{impersonationLevel=impersonate}!\\" & $strComputer & "\root\CIMV2") $colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_BIOS", "WQL", 0x10 + 0x20) EndFunc ;==>_WinClassesBios Func _BIOS() _WinClassesBios() If IsObj($colItems) Then Local $Object_Flag = 0 For $objItem In $colItems $Object_Flag = 1 $Output &= $SWMI & "Win32_BIOS" & @CRLF $Output &= "-----------------------------------------" & @CRLF & @CRLF $Output &= $Bios & $objItem.BIOSVersion(0) & @CRLF $Output &= $Bios_LangageEdit & $objItem.CurrentLanguage & @CRLF $Output &= $Fabr & $objItem.Manufacturer & @CRLF $Output &= $Bios_NumSerie & $objItem.SerialNumber & @CRLF _SMBIOSP() _BIOS_SoftwareElementState() $Output &= $Statut & $objItem.Status & @CRLF & @CRLF $Output &= $Bios_Caracteristique & @CRLF $Output &= "-------------------------" & @CRLF _BIOSCharacteristics() If $Object_Flag = 0 Then $Output &= $SortieWMIRF & $OutputTitle & @CRLF If $Output = "" Then $Output &= $SortieWMI_Bios & @CRLF If MsgBox(64, "", $Output) = 2 Then ExitLoop Next EndIf EndFunc ;==>_BIOS Func _SMBIOSP() _WinClassesBios() For $objItem In $colItems Local $SMBIOS = $objItem.SMBIOSPresent If $SMBIOS = 1 Then $Output &= $Bios_SMBIOSDispo & @CRLF $Output &= $SMBIOS_VSysMesure & $objItem.SMBIOSBIOSVersion & @CRLF Else $Output &= $SMBIOS_NDispo & $objItem.SMBIOSPresent & @CRLF EndIf Next EndFunc ;==>_SMBIOSP Func _BIOS_SoftwareElementState() _WinClassesBios() For $objItem In $colItems Local $SoftwareElementState = $objItem.SoftwareElementState Switch $SoftwareElementState Case 0 $Output &= $Bios_ELIDepl & @CRLF Case 1 $Output &= $Bios_ELIInst & @CRLF Case 2 $Output &= $Bios_ELIExectable & @CRLF Case 3 $Output &= $Bios_ELIExecution & @CRLF EndSwitch Next EndFunc ;==>_BIOS_SoftwareElementState Func _BIOSCharacteristics() _WinClassesBios() For $objItem In $colItems Local $strBiosCharacteristics = $objItem.BiosCharacteristics For $Bios_Cr In $strBiosCharacteristics Switch $Bios_Cr Case 0 $Output &= $OutputBios_0 & @CRLF Case 1 $Output &= $OutputBios_1 & @CRLF Case 2 $Output &= $OutputBios_2 & @CRLF Case 3 $Output &= $OutputBios_3 & @CRLF Case 4 $Output &= $OutputBios_4 & @CRLF Case 5 $Output &= $OutputBios_5 & @CRLF Case 6 $Output &= $OutputBios_6 & @CRLF Case 7 $Output &= $OutputBios_7 & @CRLF Case 8 $Output &= $OutputBios_8 & @CRLF Case 9 $Output &= $OutputBios_9 & @CRLF Case 10 $Output &= $OutputBios_10 & @CRLF Case 11 $Output &= $OutputBios_11 & @CRLF Case 12 $Output &= $OutputBios_12 & @CRLF Case 13 $Output &= $OutputBios_13 & @CRLF Case 14 $Output &= $OutputBios_14 & @CRLF Case 15 $Output &= $OutputBios_15 & @CRLF Case 16 $Output &= $OutputBios_16 & @CRLF Case 17 $Output &= $OutputBios_17 & @CRLF Case 18 $Output &= $OutputBios_18 & @CRLF Case 19 $Output &= $OutputBios_19 & @CRLF Case 20 $Output &= $OutputBios_20 & @CRLF Case 21 $Output &= $OutputBios_21 & @CRLF Case 22 $Output &= $OutputBios_22 & @CRLF Case 23 $Output &= $OutputBios_23 & @CRLF Case 24 $Output &= $OutputBios_24 & @CRLF Case 25 $Output &= $OutputBios_25 & @CRLF Case 26 $Output &= $OutputBios_26 & @CRLF Case 27 $Output &= $OutputBios_27 & @CRLF Case 28 $Output &= $OutputBios_28 & @CRLF Case 29 $Output &= $OutputBios_29 & @CRLF Case 30 $Output &= $OutputBios_30 & @CRLF Case 31 $Output &= $OutputBios_31 & @CRLF Case 32 $Output &= $OutputBios_32 & @CRLF Case 33 $Output &= $OutputBios_33 & @CRLF Case 34 $Output &= $OutputBios_34 & @CRLF Case 35 $Output &= $OutputBios_35 & @CRLF Case 36 $Output &= $OutputBios_36 & @CRLF Case 37 $Output &= $OutputBios_37 & @CRLF Case 38 $Output &= $OutputBios_38 & @CRLF Case 39 $Output &= $OutputBios_39 & @CRLF Case 40 To 47 $Output &= $OutputBios_40_47 & @CRLF Case 48 To 63 $Output &= $OutputBios_48_63 & @CRLF EndSwitch Next Next EndFunc ;==>_BIOSCharacteristics #cs ---------------------------------------------------------------------------- Win32_BaseBoard class _BaseBoard() Functions: _WinClassesBaseBoard() _BaseBoard() _HostingBoard() _HotSwappable() _Removable() _Replaceable() $$Output &= "Caption: " & $objItem.Caption & @CRLF $strConfigOptions = $objItem.ConfigOptions(0) "ConfigOptions: " & $strConfigOptions & @CRLF "CreationClassName: " & $objItem.CreationClassName & @CRLF "Depth: " & $objItem.Depth & @CRLF "Description: " & $objItem.Description & @CRLF "Height: " & $objItem.Height & @CRLF "HostingBoard: " & $objItem.HostingBoard & @CRLF "HotSwappable: " & $objItem.HotSwappable & @CRLF "InstallDate: " & WMIDateStringToDate($objItem.InstallDate) & @CRLF "Manufacturer: " & $objItem.Manufacturer & @CRLF "Model: " & $objItem.Model & @CRLF "Name: " & $objItem.Name & @CRLF "OtherIdentifyingInfo: " & $objItem.OtherIdentifyingInfo & @CRLF "PartNumber: " & $objItem.PartNumber & @CRLF "PoweredOn: " & $objItem.PoweredOn & @CRLF "Product: " & $objItem.Product & @CRLF "Removable: " & $objItem.Removable & @CRLF "Replaceable: " & $objItem.Replaceable & @CRLF "RequirementsDescription: " & $objItem.RequirementsDescription & @CRLF "RequiresDaughterBoard: " & $objItem.RequiresDaughterBoard & @CRLF "SerialNumber: " & $objItem.SerialNumber & @CRLF "SKU: " & $objItem.SKU & @CRLF "SlotLayout: " & $objItem.SlotLayout & @CRLF "SpecialRequirements: " & $objItem.SpecialRequirements & @CRLF "Status: " & $objItem.Status & @CRLF "Tag: " & $objItem.Tag & @CRLF "Version: " & $objItem.Version & @CRLF "Weight: " & $objItem.Weight & @CRLF "Width: " & $objItem.Width & @CRLF #ce ---------------------------------------------------------------------------- ;~ _BaseBoard() Func _WinClassesBaseBoard() $objWMIService = ObjGet("winmgmts:{impersonationLevel=impersonate}!\\" & $strComputer & "\root\CIMV2") $colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_BaseBoard", "WQL", 0x10 + 0x20) EndFunc ;==>_WinClassesBaseBoard Func _BaseBoard() _WinClassesBaseBoard() If IsObj($colItems) Then Local $Object_Flag = 0 For $objItem In $colItems $Object_Flag = 1 $Output &= $SWMI & "Win32_BaseBoard" & @CRLF $Output &= "------------------------------------------------" & @CRLF & @CRLF $Output &= $Produit & $objItem.Product & @CRLF $Output &= $Fabr & $objItem.Manufacturer & @CRLF $Output &= $Caption & $objItem.Caption & @CRLF Local $strConfigOptions = $objItem.ConfigOptions(0) $Output &= $ConfigOption & $strConfigOptions & @CRLF $Output &= $VersBoard & $objItem.Version & @CRLF $Output &= $Statut & $objItem.Status & @CRLF $Output &= "-----------------------------------------" & @CRLF _HostingBoard() _HotSwappable() $Output &= "-----------------------------------------" & @CRLF _Removable() _Replaceable() If $Object_Flag = 0 Then $Output &= $SortieWMIRF & $OutputTitle & @CRLF If $Output = "" Then $Output &= $SortieWMI_BaseBoard & @CRLF If MsgBox(64, "", $Output) = 2 Then ExitLoop Next EndIf EndFunc ;==>_BaseBoard Func _HostingBoard() _WinClassesBaseBoard() For $objItem In $colItems Local $HostingBoard = $objItem.HostingBoard If $HostingBoard = 1 Then $Output &= $HostingBoard_true & "(HostingBoard) : " & $objItem.HostingBoard & @CRLF Else $Output &= $HostingBoard_false & "(HostingBoard) : " & $objItem.HostingBoard & @CRLF EndIf Next EndFunc ;==>_HostingBoard Func _HotSwappable() _WinClassesBaseBoard() For $objItem In $colItems Local $HotSwappable = $objItem.HotSwappable If $HotSwappable = 1 Then $Output &= $HotSwappable_true & "(HotSwappable) : " & $objItem.HotSwappable & @CRLF Else $Output &= $HotSwappable_false & "(HotSwappable) : " & $objItem.HotSwappable & @CRLF EndIf Next EndFunc ;==>_HotSwappable Func _Removable() _WinClassesBaseBoard() For $objItem In $colItems Local $Removable = $objItem.Removable If $Removable = 1 Then $Output &= $Removable_true & "(Removable) : " & $objItem.Removable & @CRLF Else $Output &= $Removable_false & "(Removable) : " & $objItem.Removable & @CRLF EndIf Next EndFunc ;==>_Removable Func _Replaceable() _WinClassesBaseBoard() For $objItem In $colItems Local $Replaceable = $objItem.Replaceable If $Replaceable = 1 Then $Output &= $Replaceable_true & "(Replaceable) : " & $objItem.Replaceable & @CRLF Else $Output &= $Replaceable_false & "(Replaceable) : " & $objItem.Replaceable & @CRLF EndIf Next EndFunc ;==>_Replaceable #cs ---------------------------------------------------------------------------- Win32_Processor class Processor() Functions: _WinClassesProcessor() _Processor() _TypeProc() _VirtualProcess() _VMVirtualProcess() _StatuIfoProc() $Output &= "AddressWidth: " & $objItem.AddressWidth & @CRLF "Architecture: " & $objItem.Architecture & @CRLF "AssetTag: " & $objItem.AssetTag & @CRLF "Availability: " & $objItem.Availability & @CRLF "Caption: " & $objItem.Caption & @CRLF "Characteristics: " & $objItem.Characteristics & @CRLF "ConfigManagerErrorCode: " & $objItem.ConfigManagerErrorCode & @CRLF "ConfigManagerUserConfig: " & $objItem.ConfigManagerUserConfig & @CRLF "CpuStatus: " & $objItem.CpuStatus & @CRLF "CreationClassName: " & $objItem.CreationClassName & @CRLF "CurrentClockSpeed: " & $objItem.CurrentClockSpeed & @CRLF "CurrentVoltage: " & $objItem.CurrentVoltage & @CRLF "DataWidth: " & $objItem.DataWidth & @CRLF "Description: " & $objItem.Description & @CRLF "DeviceID: " & $objItem.DeviceID & @CRLF "ErrorCleared: " & $objItem.ErrorCleared & @CRLF "ErrorDescription: " & $objItem.ErrorDescription & @CRLF "ExtClock: " & $objItem.ExtClock & @CRLF "Family: " & $objItem.Family & @CRLF "InstallDate: " & WMIDateStringToDate($objItem.InstallDate) & @CRLF "L2CacheSize: " & $objItem.L2CacheSize & @CRLF "L2CacheSpeed: " & $objItem.L2CacheSpeed & @CRLF "L3CacheSize: " & $objItem.L3CacheSize & @CRLF "L3CacheSpeed: " & $objItem.L3CacheSpeed & @CRLF "LastErrorCode: " & $objItem.LastErrorCode & @CRLF "Level: " & $objItem.Level & @CRLF "LoadPercentage: " & $objItem.LoadPercentage & @CRLF "Manufacturer: " & $objItem.Manufacturer & @CRLF "MaxClockSpeed: " & $objItem.MaxClockSpeed & @CRLF "Name: " & $objItem.Name & @CRLF "NumberOfCores: " & $objItem.NumberOfCores & @CRLF "NumberOfEnabledCore: " & $objItem.NumberOfEnabledCore & @CRLF "NumberOfLogicalProcessors: " & $objItem.NumberOfLogicalProcessors & @CRLF "OtherFamilyDescription: " & $objItem.OtherFamilyDescription & @CRLF "PartNumber: " & $objItem.PartNumber & @CRLF "PNPDeviceID: " & $objItem.PNPDeviceID & @CRLF $strPowerManagementCapabilities = $objItem.PowerManagementCapabilities(0) "PowerManagementCapabilities: " & $strPowerManagementCapabilities & @CRLF "PowerManagementSupported: " & $objItem.PowerManagementSupported & @CRLF "ProcessorId: " & $objItem.ProcessorId & @CRLF "ProcessorType: " & $objItem.ProcessorType & @CRLF "Revision: " & $objItem.Revision & @CRLF "Role: " & $objItem.Role & @CRLF "SecondLevelAddressTranslationExtensions: " & $objItem.SecondLevelAddressTranslationExtensions & @CRLF "SerialNumber: " & $objItem.SerialNumber & @CRLF "SocketDesignation: " & $objItem.SocketDesignation & @CRLF "Status: " & $objItem.Status & @CRLF "StatusInfo: " & $objItem.StatusInfo & @CRLF "Stepping: " & $objItem.Stepping & @CRLF "SystemCreationClassName: " & $objItem.SystemCreationClassName & @CRLF "SystemName: " & $objItem.SystemName & @CRLF "ThreadCount: " & $objItem.ThreadCount & @CRLF "UniqueId: " & $objItem.UniqueId & @CRLF "UpgradeMethod: " & $objItem.UpgradeMethod & @CRLF "Version: " & $objItem.Version & @CRLF "VirtualizationFirmwareEnabled: " & $objItem.VirtualizationFirmwareEnabled & @CRLF "VMMonitorModeExtensions: " & $objItem.VMMonitorModeExtensions & @CRLF "VoltageCaps: " & $objItem.VoltageCaps & @CRLF #ce ---------------------------------------------------------------------------- ;~ _Processor() Func _WinClassesProcessor() $objWMIService = ObjGet("winmgmts:{impersonationLevel=impersonate}!\\" & $strComputer & "\root\CIMV2") $colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_Processor", "WQL", 0x10 + 0x20) EndFunc ;==>_WinClassesProcessor Func _Processor() _WinClassesProcessor() If IsObj($colItems) Then Local $Object_Flag = 0 For $objItem In $colItems $Object_Flag = 1 $Output &= $SWMI & "Win32_Processor" & @CRLF $Output &= "-----------------------------------------------" & @CRLF & @CRLF $Output &= $NamePorcess & $objItem.Name & @CRLF $Output &= "Description : " & $objItem.Description & @CRLF $Output &= $Fabr & $objItem.Manufacturer & @CRLF $Output &= "Role : " & $objItem.Role & @CRLF $Output &= "-----------------------------------------------" & @CRLF $Output &= $DWitch_Process & " X " & $objItem.DataWidth & @CRLF $Output &= $IDProcess & $objItem.ProcessorId & @CRLF _TypeProc() $Output &= "-----------------------------------------------" & @CRLF $Output &= $NbCoreProcess & $objItem.NumberOfCores & @CRLF If @OSVersion = "WIN_10" Then ; This property is not supported before Windows Server 2016 Technical Preview and Windows 10. $Output &= $NbCorePermis & $objItem.NumberOfEnabledCore & @CRLF Else $Output &= $NbCorePermis & "? OSVersion < Win 10" & @CRLF EndIf $Output &= $NbCoreLogique & $objItem.NumberOfLogicalProcessors & @CRLF $Output &= "-----------------------------------------------" & @CRLF _VirtualFirWareProc() _VMVirtualProcess() _StatuInfoProc() $Output &= $Statut & $objItem.Status & @CRLF If $Object_Flag = 0 Then $Output &= $SortieWMIRF & $OutputTitle & @CRLF If $Output = "" Then $Output &= $SortieWMI_Proc & @CRLF If MsgBox(64, "", $Output) = 2 Then ExitLoop Next EndIf EndFunc ;==>_Processor Func _TypeProc() _WinClassesProcessor() For $objItem In $colItems Local $ProcessorType = $objItem.ProcessorType Switch $ProcessorType Case 1 $Output &= $TypeProcess & $OutputProc_1 & @CRLF Case 2 $Output &= $TypeProcess & $OutputProc_2 & @CRLF Case 3 $Output &= $TypeProcess & $OutputProc_3 & @CRLF Case 4 $Output &= $TypeProcess & $OutputProc_4 & @CRLF Case 5 $Output &= $TypeProcess & $OutputProc_5 & @CRLF Case 6 $Output &= $TypeProcess & $OutputProc_6 & @CRLF EndSwitch Next EndFunc ;==>_TypeProc Func _VirtualFirWareProc() ; ;~ Windows Server 2008 R2, Windows 7, Windows Server 2008, and Windows Vista: This property is not supported before Windows 8 and Windows Server 2012. _WinClassesProcessor() For $objItem In $colItems Switch @OSVersion Case "WIN_10", "WIN_8.1", "WIN_8", "Win_2008", "WIN_2008R2" Local $VirtualizationFirmwareEnabled = $objItem.VirtualizationFirmwareEnabled If $VirtualizationFirmwareEnabled = True Then $Output &= $ProcVirtuel & @CRLF Else $Output &= $ProcVirtuelNot & @CRLF EndIf Case Else $Output &= $ProcVirtuelNot & @CRLF EndSwitch Next EndFunc ;==>_VirtualFirWareProc Func _VMVirtualProcess() ; Windows Server 2008 R2, Windows 7, Windows Server 2008, and Windows Vista: This property is not supported before Windows 8 and Windows Server 2012. _WinClassesProcessor() For $objItem In $colItems Switch @OSVersion Case "WIN_10", "WIN_8.1", "WIN_8", "Win_2008", "WIN_2008R2" Local $VMMonitorModeExtensions = $objItem.VMMonitorModeExtensions If $VMMonitorModeExtensions = 1 Then $Output &= $WMProcess & @CRLF & $WMProcessInfo & @CRLF Else $Output &= $WMProcess & @CRLF & $WMProcessInfo & @CRLF EndIf Case Else $Output &= $ProcVirtuelNot & @CRLF EndSwitch Next EndFunc ;==>_VMVirtualProcess Func _StatuInfoProc() _WinClassesProcessor() For $objItem In $colItems Local $StatusInfo = $objItem.StatusInfo Switch $StatusInfo Case 1 $Output &= $Autres & @CRLF Case 2 $Output &= $Inconnu & @CRLF Case 3 $Output &= $Enabled & @CRLF Case 4 $Output &= $Disabled & @CRLF Case 5 $Output &= $Sansobjet & @CRLF EndSwitch Next EndFunc ;==>_StatuInfoProc ;==>WinClassesBaseBoard #cs ---------------------------------------------------------------------------- Win32_PhysicalMemory class _PhysicalMemory() Functions : _PhysicalMemory() _GETDOSOUTPUT($COMMAND) "Access: " & $objItem.Access & @CRLF $strAdditionalErrorData = $objItem.AdditionalErrorData(0) "AdditionalErrorData: " & $strAdditionalErrorData & @CRLF "Availability: " & $objItem.Availability & @CRLF "BlockSize: " & $objItem.BlockSize & @CRLF "Caption: " & $objItem.Caption & @CRLF "ConfigManagerErrorCode: " & $objItem.ConfigManagerErrorCode & @CRLF "ConfigManagerUserConfig: " & $objItem.ConfigManagerUserConfig & @CRLF "CorrectableError: " & $objItem.CorrectableError & @CRLF "CreationClassName: " & $objItem.CreationClassName & @CRLF "Description: " & $objItem.Description & @CRLF "DeviceID: " & $objItem.DeviceID & @CRLF "EndingAddress: " & $objItem.EndingAddress & @CRLF "ErrorAccess: " & $objItem.ErrorAccess & @CRLF "ErrorAddress: " & $objItem.ErrorAddress & @CRLF "ErrorCleared: " & $objItem.ErrorCleared & @CRLF $strErrorData = $objItem.ErrorData(0) "ErrorData: " & $strErrorData & @CRLF "ErrorDataOrder: " & $objItem.ErrorDataOrder & @CRLF "ErrorDescription: " & $objItem.ErrorDescription & @CRLF "ErrorGranularity: " & $objItem.ErrorGranularity & @CRLF "ErrorInfo: " & $objItem.ErrorInfo & @CRLF "ErrorMethodology: " & $objItem.ErrorMethodology & @CRLF "ErrorResolution: " & $objItem.ErrorResolution & @CRLF "ErrorTime: " & WMIDateStringToDate($objItem.ErrorTime) & @CRLF "ErrorTransferSize: " & $objItem.ErrorTransferSize & @CRLF "Ins tallDate: " & WMIDateStringToDate($objItem.InstallDate) & @CRLF "Las tErrorCode: " & $objItem.LastErrorCode & @CRLF "Name: " & $objItem.Name & @CRLF "Num berOfBlocks: " & $objItem.NumberOfBlocks & @CRLF "OtherErrorDescription: " & $objItem.OtherErrorDescription & @CRLF "PNPDeviceID: " & $objItem.PNPDeviceID & @CRLF $strPowerManagementCapabilities = $objItem.PowerManagementCapabilities(0) "PowerManagementCapabilities: " & $strPowerManagementCapabilities & @CRLF "PowerManagementSupported: " & $objItem.PowerManagementSupported & @CRLF "Purpose: " & $objItem.Purpose & @CRLF "StartingAddress: " & $objItem.StartingAddress & @CRLF "Status: " & $objItem.Status & @CRLF "StatusInfo: " & $objItem.StatusInfo & @CRLF "SystemCreationClassName: " & $objItem.SystemCreationClassName & @CRLF "SystemLevelAddress: " & $objItem.SystemLevelAddress & @CRLF "SystemName: " & $objItem.SystemName & @CRLF $Output &= "Access: " & $objItem.Access & @CRLF $strAdditionalErrorData = $objItem.AdditionalErrorData(0) #ce ---------------------------------------------------------------------------- ;~ _PhysicalMemory() ;~ Local $cmd = _GETDOSOUTPUT("wmic MEMORYCHIP get BankLabel,DeviceLocator,Capacity,Tag") ;~ Local $Mem = MemGetStats() ;~ Local $MemTot = Round(($Mem[1]) / 1024 ^ 2) ;~ Local $MemFree = Round(($Mem[2]) / 1024 ^ 2, 2) ;~ Local $MemUtil = $MemTot - $MemFree ;~ $Mem = $Capacity & $MemTot & " GO - " & $Free & $MemFree & " GO - " & $Used & $MemUtil & " GO" & @CRLF ;~ Local $Tilte = "--------------------------------------------------------" & @CRLF ;~ Local $Tilte1 = $SWMI & "Win32_PhysicalMemory" & @CRLF ;~ Local $Tilte2 = "--------------------------------------------------------" & @CRLF & @CRLF ;~ MsgBox(64, "", $Mem & $Tilte & $Tilte1 & $Tilte2 & $Output & $Tilte & " - CMD - " & @CRLF & $Tilte & @CRLF & $cmd) Func _PhysicalMemory() $objWMIService = ObjGet("winmgmts:{impersonationLevel=impersonate}!\\" & $strComputer & "\root\CIMV2") $colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_PhysicalMemory", "WQL", 0x10 + 0x20) If IsObj($colItems) Then Local $Object_Flag = 0 For $objItem In $colItems Local $FormFactor = $objItem.FormFactor Local $MemoryType = $objItem.MemoryType $Object_Flag = 1 $Output &= $Name & $objItem.Name & @CRLF $Output &= $Fabr & $objItem.Manufacturer & @CRLF $Output &= $Speed & $objItem.Speed & " MHz - Ref : " & $objItem.PartNumber & @CRLF Switch $FormFactor Case 0 $Output &= $Inconnu & " (0)" & @CRLF Case 1 $Output &= $Autre & " (1)" & @CRLF Case 2 $Output &= "SIP" & " (2)" & @CRLF Case 3 $Output &= "DIP" & " (3)" & @CRLF Case 4 $Output &= "ZIP" & " (4)" & @CRLF Case 5 $Output &= "SOJ" & " (5)" & @CRLF Case 6 $Output &= $Proprio & " (6)" & @CRLF Case 7 $Output &= "SIMM" & " (7)" & @CRLF Case 8 $Output &= "DIMM" & " (8)" & @CRLF Case 9 $Output &= "TSOP" & " (9)" & @CRLF Case 10 $Output &= "PGA" & " (10)" & @CRLF Case 11 $Output &= "RIMM" & " (11)" & @CRLF Case 12 $Output &= "SODIMM" & " (12)" & @CRLF Case 13 $Output &= "SRIMM" & " (13)" & @CRLF Case 14 $Output &= "SMD" & " (14)" & @CRLF Case 15 $Output &= "SSMP" & " (15)" & @CRLF Case 16 $Output &= "QFP" & " (16)" & @CRLF Case 17 $Output &= "TQFP" & " (17)" & @CRLF Case 18 $Output &= "SOIC" & " (18)" & @CRLF Case 19 $Output &= "LCC" & " (19)" & @CRLF Case 20 $Output &= "PLCC" & " (20)" & @CRLF Case 21 $Output &= "BGA" & " (21)" & @CRLF Case 22 $Output &= "FPBGA" & " (22)" & @CRLF Case 23 $Output &= "LGA" & " (23)" & @CRLF EndSwitch Switch $MemoryType Case 0 $Output &= $Inconnu & " (0)" & @CRLF Case 1 $Output &= $Autre & " (1)" & @CRLF Case 2 $Output &= "DRAM (2)" & @CRLF Case 3 $Output &= "Synchronous DRAM (3)" & @CRLF Case 4 $Output &= "Cache DRAM (4)" & @CRLF Case 5 $Output &= "EDO (5)" & @CRLF Case 6 $Output &= "EDRAM (6)" & @CRLF Case 7 $Output &= "VRAM (7)" & @CRLF Case 8 $Output &= "SRAM (8)" & @CRLF Case 9 $Output &= "RAM (9)" & @CRLF Case 10 $Output &= "ROM (10)" & @CRLF Case 11 $Output &= "Flash (11)" & @CRLF Case 12 $Output &= "EEPROM (12)" & @CRLF Case 13 $Output &= "FEPROM (13)" & @CRLF Case 14 $Output &= "EPROM (14)" & @CRLF Case 15 $Output &= "CDRAM (15)" & @CRLF Case 16 $Output &= "3DRAM (16)" & @CRLF Case 17 $Output &= "SDRAM (17)" & @CRLF Case 18 $Output &= "SGRAM (18)" & @CRLF Case 19 $Output &= "RDRAM (19)" & @CRLF Case 20 $Output &= "DDR (20)" & @CRLF Case 21 $Output &= "DDR2 (21)" & @CRLF Case 22 $Output &= "DDR2 FB-DIMM (22)" & @CRLF Case 24 $Output &= "DDR3 (24)" & @CRLF Case 25 $Output &= "FBD2 (25)" & @CRLF EndSwitch $Output &= $Capacity & $objItem.Capacity / 1024 ^ 2 & " mb" & @CRLF & @CRLF If $Object_Flag = 0 Then $Output &= $SortieWMIRF & $OutputTitle & @CRLF If $Output = "" Then $Output &= $SortieWMI_PhysicalMemory & @CRLF Next EndIf EndFunc ;==>_PhysicalMemory Func _GETDOSOUTPUT($COMMAND) Local $CH, $TMP Local $TEXT = "", $PID = Run('"' & @ComSpec & '" /c ' & $COMMAND, "", @SW_HIDE, 2 + 4) While 1 $TEXT &= StdoutRead($PID, False, False) If @error Then ExitLoop Sleep(10) WEnd $CH = StringSplit("‚,é;Š,è;ƒ,â;ˆ,ê;…,à;—,ù;‡,ç;ÿ, ;“,ô", ";") For $i = 1 To $CH[0] $TMP = StringSplit($CH[$i], ",") $TEXT = StringReplace($TEXT, $TMP[1], $TMP[2]) Next Return $TEXT EndFunc ;==>_GETDOSOUTPUT #cs ---------------------------------------------------------------------------- Win32_VideoController class _VideoController() Functions : _WinClassesVideoController() WMIDateStringToDate($dtmDate) _VideoController() _VideoArchitecture() _AcceleratorCapabilities() _Availability() _VideoMemoryType() _ConfigVideoUser() _ConfigManagerErrorCode() $strAcceleratorCapabilities = $objItem.AcceleratorCapabilities(0) "AcceleratorCapabilities: " & $strAcceleratorCapabilities & @CRLF "AdapterCompatibility: " & $objItem.AdapterCompatibility & @CRLF "AdapterDACType: " & $objItem.AdapterDACType & @CRLF "AdapterRAM: " & $objItem.AdapterRAM & @CRLF "Availability: " & $objItem.Availability & @CRLF $strCapabilityDescriptions = $objItem.CapabilityDescriptions(0) "CapabilityDescriptions: " & $strCapabilityDescriptions & @CRLF "Caption: " & $objItem.Caption & @CRLF "ColorTableEntries: " & $objItem.ColorTableEntries & @CRLF "ConfigManagerErrorCode: " & $objItem.ConfigManagerErrorCode & @CRLF "ConfigManagerUserConfig: " & $objItem.ConfigManagerUserConfig & @CRLF "CreationClassName: " & $objItem.CreationClassName & @CRLF "CurrentBitsPerPixel: " & $objItem.CurrentBitsPerPixel & @CRLF "CurrentHorizontalResolution: " & $objItem.CurrentHorizontalResolution & @CRLF "CurrentNumberOfColors: " & $objItem.CurrentNumberOfColors & @CRLF "CurrentNumberOfColumns: " & $objItem.CurrentNumberOfColumns & @CRLF "CurrentNumberOfRows: " & $objItem.CurrentNumberOfRows & @CRLF "CurrentRefreshRate: " & $objItem.CurrentRefreshRate & @CRLF "CurrentScanMode: " & $objItem.CurrentScanMode & @CRLF "CurrentVerticalResolution: " & $objItem.CurrentVerticalResolution & @CRLF "Description: " & $objItem.Description & @CRLF "DeviceID: " & $objItem.DeviceID & @CRLF "DeviceSpecificPens: " & $objItem.DeviceSpecificPens & @CRLF "DitherType: " & $objItem.DitherType & @CRLF "DriverDate: " & WMIDateStringToDate($objItem.DriverDate) & @CRLF "DriverVersion: " & $objItem.DriverVersion & @CRLF "ErrorCleared: " & $objItem.ErrorCleared & @CRLF "ErrorDescription: " & $objItem.ErrorDescription & @CRLF "ICMIntent: " & $objItem.ICMIntent & @CRLF "ICMMethod: " & $objItem.ICMMethod & @CRLF "InfFilename: " & $objItem.InfFilename & @CRLF "InfSection: " & $objItem.InfSection & @CRLF "InstallDate: " & WMIDateStringToDate($objItem.InstallDate) & @CRLF "InstalledDisplayDrivers: " & $objItem.InstalledDisplayDrivers & @CRLF "LastErrorCode: " & $objItem.LastErrorCode & @CRLF "MaxMemorySupported: " & $objItem.MaxMemorySupported & @CRLF "MaxNumberControlled: " & $objItem.MaxNumberControlled & @CRLF "MaxRefreshRate: " & $objItem.MaxRefreshRate & @CRLF "MinRefreshRate: " & $objItem.MinRefreshRate & @CRLF "Monochrome: " & $objItem.Monochrome & @CRLF "Name: " & $objItem.Name & @CRLF "NumberOfColorPlanes: " & $objItem.NumberOfColorPlanes & @CRLF "NumberOfVideoPages: " & $objItem.NumberOfVideoPages & @CRLF "PNPDeviceID: " & $objItem.PNPDeviceID & @CRLF $strPowerManagementCapabilities = $objItem.PowerManagementCapabilities(0) "PowerManagementCapabilities: " & $strPowerManagementCapabilities & @CRLF "PowerManagementSupported: " & $objItem.PowerManagementSupported & @CRLF "ProtocolSupported: " & $objItem.ProtocolSupported & @CRLF "ReservedSystemPaletteEntries: " & $objItem.ReservedSystemPaletteEntries & @CRLF "SpecificationVersion: " & $objItem.SpecificationVersion & @CRLF "Status: " & $objItem.Status & @CRLF "StatusInfo: " & $objItem.StatusInfo & @CRLF "SystemCreationClassName: " & $objItem.SystemCreationClassName & @CRLF "SystemName: " & $objItem.SystemName & @CRLF "SystemPaletteEntries: " & $objItem.SystemPaletteEntries & @CRLF "TimeOfLastReset: " & WMIDateStringToDate($objItem.TimeOfLastReset) & @CRLF "VideoArchitecture: " & $objItem.VideoArchitecture & @CRLF "VideoMemoryType: " & $objItem.VideoMemoryType & @CRLF "VideoMode: " & $objItem.VideoMode & @CRLF "VideoModeDescription: " & $objItem.VideoModeDescription & @CRLF "VideoProcessor: " & $objItem.VideoProcessor & @CRLF #ce ---------------------------------------------------------------------------- ;~ _VideoController() Func _WinClassesVideoController() $objWMIService = ObjGet("winmgmts:{impersonationLevel=impersonate}!\\" & $strComputer & "\root\CIMV2") $colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_VideoController", "WQL", 0x10 + 0x20) EndFunc ;==>_WinClassesVideoController Func _VideoController() _WinClassesVideoController() If IsObj($colItems) Then Local $Object_Flag = 0 For $objItem In $colItems $Object_Flag = 1 $Output &= $SWMI & "Win32_VideoController" & @CRLF $Output &= "-----------------------------------------------" & @CRLF & @CRLF $Output &= $Name & $objItem.Name & @CRLF $Output &= "DAC : " & $objItem.AdapterDACType & @CRLF $Output &= "Description : " & $objItem.VideoModeDescription & @CRLF $Output &= $CurrentBitsPerPixel & $objItem.CurrentBitsPerPixel & " bits" & @CRLF $Output &= $MemVideo & $objItem.AdapterRAM / 1024 ^ 2 & " MO" & @CRLF $Output &= $DeviceID & $objItem.DeviceID & @CRLF _VideoArchitecture() _AcceleratorCapabilities() $Output &= $CurrentRefreshRate & $objItem.CurrentRefreshRate & " Hertz" & @CRLF $Output &= "-----------------------------------------------" & @CRLF & @CRLF $Output &= "Driver Date : " & WMIDateStringToDate($objItem.DriverDate) & @CRLF $Output &= "Driver Version : " & $objItem.DriverVersion & @CRLF $Output &= $DriverInstall & $objItem.InstalledDisplayDrivers & @CRLF $Output &= "-----------------------------------------------" & @CRLF & @CRLF _ConfigVideoUser() _VideoMemoryType() $Output &= "VideoMemoryType: " & $objItem.VideoMemoryType & @CRLF $Output &= $FileINF & $objItem.InfFilename & @CRLF $Output &= "Section : " & $objItem.InfSection & @CRLF $Output &= "-----------------------------------------------" & @CRLF & @CRLF _Availability() $Output &= "Status: " & $objItem.Status & @CRLF _ConfigManagerErrorCode() If $Object_Flag = 0 Then $Output &= $SortieWMIRF & $OutputTitle & @CRLF If $Output = "" Then $Output &= $SortieWMI_Video & @CRLF If MsgBox(64, "", $Output) = 2 Then ExitLoop Next EndIf EndFunc ;==>_VideoController Func WMIDateStringToDate($dtmDate) Return (StringMid($dtmDate, 5, 2) & "/" & _ StringMid($dtmDate, 7, 2) & "/" & StringLeft($dtmDate, 4) _ & " " & StringMid($dtmDate, 9, 2) & ":" & StringMid($dtmDate, 11, 2) & ":" & StringMid($dtmDate, 13, 2)) EndFunc ;==>WMIDateStringToDate Func _VideoArchitecture() _WinClassesVideoController() For $objItem In $colItems Local $VideoArchitecture = $objItem.VideoArchitecture Switch $VideoArchitecture Case 1 $Output &= $ArchVideo & $Inconnu & "(0)" & @CRLF Case 2 $Output &= $ArchVideo & $Autre & "(1)" & @CRLF Case 3 $Output &= $ArchVideo & "CGA (3)" & @CRLF Case 4 $Output &= $ArchVideo & "EGA (4)" & @CRLF Case 5 $Output &= $ArchVideo & "VGA (5)" & @CRLF Case 6 $Output &= $ArchVideo & "SVGA (6)" & @CRLF Case 7 $Output &= $ArchVideo & "MDA (7)" & @CRLF Case 8 $Output &= $ArchVideo & "HGC (8)" & @CRLF Case 9 $Output &= $ArchVideo & "MCGA (9)" & @CRLF Case 10 $Output &= $ArchVideo & "8514A (10)" & @CRLF Case 11 $Output &= $ArchVideo & "XGA (11)" & @CRLF Case 12 $Output &= $ArchVideo & "Linear Frame Buffer (12)" & @CRLF Case 160 $Output &= $ArchVideo & "PC-98 (160)" & @CRLF EndSwitch Next EndFunc ;==>_VideoArchitecture Func _AcceleratorCapabilities() _WinClassesVideoController() For $objItem In $colItems Local $strAcceleratorCapabilities = $objItem.AcceleratorCapabilities Switch $strAcceleratorCapabilities Case 0 $Output &= $ControlVideo & $Inconnu & "(0)" & @CRLF Case 1 $Output &= $ControlVideo & $Autre & "(1)" & @CRLF Case 2 $Output &= $ControlVideo & $AccelerateurGraph & "(2)" & @CRLF Case 3 $Output &= $ControlVideo & $Accelerateur3D & "(3)" & @CRLF EndSwitch Next EndFunc ;==>_AcceleratorCapabilities Func _Availability() _WinClassesVideoController() For $objItem In $colItems Local $Availability = $objItem.Availability Switch $Availability Case 1 $Output &= $DispoVideoControl & $Inconnu & "(1)" & @CRLF Case 2 $Output &= $DispoVideoControl & $Autre & "(2)" & @CRLF Case 3 $Output &= $DispoVideoControl & $Availability3 & @CRLF Case 4 $Output &= $DispoVideoControl & $Availability4 & @CRLF Case 5 $Output &= $DispoVideoControl & $Availability5 & @CRLF Case 6 $Output &= $DispoVideoControl & $Availability6 & @CRLF Case 7 $Output &= $DispoVideoControl & $Availability7 & @CRLF Case 8 $Output &= $DispoVideoControl & $Availability8 & @CRLF Case 9 $Output &= $DispoVideoControl & $Availability9 & @CRLF Case 10 $Output &= $DispoVideoControl & $Availability10 & @CRLF Case 11 $Output &= $DispoVideoControl & $Availability11 & @CRLF Case 12 $Output &= $DispoVideoControl & $Availability12 & @CRLF Case 13 $Output &= $DispoVideoControl & $Availability13 & @CRLF Case 14 $Output &= $DispoVideoControl & $Availability14 & @CRLF Case 15 $Output &= $DispoVideoControl & $Availability15 & @CRLF Case 16 $Output &= $DispoVideoControl & $Availability16 & @CRLF Case 17 $Output &= $DispoVideoControl & $Availability17 & @CRLF Case 18 $Output &= $DispoVideoControl & $Availability18 & @CRLF Case 19 $Output &= $DispoVideoControl & $Availability19 & @CRLF Case 20 $Output &= $DispoVideoControl & $Availability20 & @CRLF Case 21 $Output &= $DispoVideoControl & $Availability21 & @CRLF EndSwitch Next EndFunc ;==>_Availability Func _VideoMemoryType() _WinClassesVideoController() For $objItem In $colItems Local $VideoMemType = $objItem.VideoMemoryType Switch $VideoMemType Case 1 $Output &= $VideoMemoryType & $Autre & "(1)" & @CRLF Case 2 $Output &= $VideoMemoryType & $Inconnu & @CRLF Case 3 $Output &= $VideoMemoryType & "VRAM (3)" & @CRLF Case 4 $Output &= $VideoMemoryType & "DRAM (4)" & @CRLF Case 5 $Output &= $VideoMemoryType & "SRAM (5)" & @CRLF Case 6 $Output &= $VideoMemoryType & "WRAM (6)" & @CRLF Case 7 $Output &= $VideoMemoryType & "EDO RAM (7)" & @CRLF Case 8 $Output &= $VideoMemoryType & "Burst Synchronous DRAM (8)" & @CRLF Case 9 $Output &= $VideoMemoryType & "Pipelined Burst SRAM (9)" & @CRLF Case 10 $Output &= $VideoMemoryType & "CDRAM (10)" & @CRLF Case 11 $Output &= $VideoMemoryType & "3DRAM (11)" & @CRLF Case 12 $Output &= $VideoMemoryType & "SDRAM (12)" & @CRLF Case 13 $Output &= $VideoMemoryType & "SGRAM (13)" & @CRLF EndSwitch Next EndFunc ;==>_VideoMemoryType Func _ConfigVideoUser() _WinClassesVideoController() For $objItem In $colItems Local $ConfigManagerUserConfig = $objItem.ConfigManagerUserConfig If $ConfigManagerUserConfig = False Then $Output &= $ConfigUserVideo & $False & @CRLF Else $Output &= $ConfigUserVideo & $True & @CRLF EndIf Next EndFunc ;==>_ConfigVideoUser Func _ConfigManagerErrorCode() _WinClassesVideoController() For $objItem In $colItems Local $ErrorCode = $objItem.ConfigManagerErrorCode Switch $ErrorCode Case 0 $Output &= $CMECWIN32 & $CMEC0 Case 1 $Output &= $CMECWIN32 & $CMEC1 Case 2 $Output &= $CMECWIN32 & $CMEC2 Case 3 $Output &= $CMECWIN32 & $CMEC3 Case 4 $Output &= $CMECWIN32 & $CMEC4 Case 5 $Output &= $CMECWIN32 & $CMEC5 Case 6 $Output &= $CMECWIN32 & $CMEC6 Case 7 $Output &= $CMECWIN32 & $CMEC7 Case 8 $Output &= $CMECWIN32 & $CMEC8 Case 9 $Output &= $CMECWIN32 & $CMEC9 Case 10 $Output &= $CMECWIN32 & $CMEC10 Case 11 $Output &= $CMECWIN32 & $CMEC11 Case 12 $Output &= $CMECWIN32 & $CMEC12 Case 13 $Output &= $CMECWIN32 & $CMEC13 Case 14 $Output &= $CMECWIN32 & $CMEC14 Case 15 $Output &= $CMECWIN32 & $CMEC15 Case 16 $Output &= $CMECWIN32 & $CMEC16 Case 17 $Output &= $CMECWIN32 & $CMEC17 Case 18 $Output &= $CMECWIN32 & $CMEC18 Case 19 $Output &= $CMECWIN32 & $CMEC19 Case 20 $Output &= $CMECWIN32 & $CMEC20 Case 21 $Output &= $CMECWIN32 & $CMEC21 Case 22 $Output &= $CMECWIN32 & $CMEC22 Case 23 $Output &= $CMECWIN32 & $CMEC23 Case 24 $Output &= $CMECWIN32 & $CMEC24 Case 25 $Output &= $CMECWIN32 & $CMEC25 Case 26 $Output &= $CMECWIN32 & $CMEC26 Case 27 $Output &= $CMECWIN32 & $CMEC27 Case 28 $Output &= $CMECWIN32 & $CMEC28 Case 29 $Output &= $CMECWIN32 & $CMEC29 Case 30 $Output &= $CMECWIN32 & $CMEC30 Case 31 $Output &= $CMECWIN32 & $CMEC31 EndSwitch Next EndFunc ;==>_ConfigManagerErrorCode