Page 1 sur 2

Obtenir des informations sur processeur avec "WMI"

Publié : mer. 09/nov./2016 16:00
par celtic88
Il ya PU de chose a dir, mais pas a faire :D

voici deux code qui montrant comment obtenir les caractéristiques techniques de notre cpu comme le voltage type de fonctionnement : la temperature et les nombres des c est core ext.......

Amusez vous bien ++

Code : Tout sélectionner

;Coder celtic88 2016(c)

DataSection
  CLSID_WbemAdministrativeLocator:
  Data.l  $CB8555CC
  Data.w  $9128
  Data.w  $11D1
  Data.b $AD, $9B, $0, $C0, $4F, $D8, $FD, $FF
  IID_IWbemLocator:
  Data.l  $DC12A687
  Data.w  $737F
  Data.w  $11CF
  Data.b $88, $4D, $0, $AA, $0, $4B, $2E, $24
EndDataSection

#CLSCTX_INPROC_SERVER = $1
#WBEM_FLAG_RETURN_IMMEDIATELY = $10
#WBEM_FLAG_FORWARD_ONLY = $20
#WBEM_INFINITE = $FFFFFFFF
#RPC_C_IMP_LEVEL_IMPERSONATE = 3
#RPC_C_AUTHN_LEVEL_DEFAULT = 0

If CoInitializeEx_(0, #COINIT_MULTITHREADED) = #S_OK
  
  If CoInitializeSecurity_(0, -1, 0, 0, #RPC_C_AUTHN_LEVEL_DEFAULT, #RPC_C_IMP_LEVEL_IMPERSONATE, 0, 0, 0) = #S_OK
    
    pLocator.IWbemLocator
    If CoCreateInstance_(?CLSID_WbemAdministrativeLocator, 0, #CLSCTX_INPROC_SERVER, ?IID_IWbemLocator, @pLocator) = #S_OK
      
      pServices.IWbemServices
      If pLocator\ConnectServer(@"root\WMI", 0, 0, 0, 0, 0, 0, @pServices) = #S_OK
        
        pEnum.IEnumWbemClassObject
        If pServices\ExecQuery(@"WQL", @"SELECT * FROM MSAcpi_ThermalZoneTemperature", #WBEM_FLAG_RETURN_IMMEDIATELY | #WBEM_FLAG_FORWARD_ONLY, 0, @pEnum) = #S_OK
          ;http://wutils.com/wmi/root/wmi/msacpi_thermalzonetemperature/
          
          pObject.IWbemClassObject
          v.VARIANT
          returned.l
          
          If pEnum\Next(#WBEM_INFINITE, 1, @pObject, @returned) = #S_OK
                        
            VariantInit_(@v);
            
            If pObject\Get(@"InstanceName", 0, @v, 0, 0) = #S_OK
              Debug "Instance Name : " + PeekS(v\bstrVal) 
              VariantClear_(@v)
            EndIf      
            
            If pObject\Get(@"CurrentTemperature", 0, @v, 0, 0) = #S_OK
              Debug "Current CPU Temperature : " + StrF((v\lVal/ 10) - 273.15,2) + " C°"
              VariantClear_(@v)
            EndIf 
            
            If pObject\Get(@"SamplingPeriod", 0, @v, 0, 0) = #S_OK
              Debug "Temperature Sampling Period : " + Str(v\lVal) + " Sec"
              VariantClear_(@v)
            EndIf   
            
            If pObject\Get(@"ActiveTripPointCount", 0, @v, 0, 0) = #S_OK
              Debug "Active Trip Point Count : " + Str(v\lVal)
              VariantClear_(@v)
            EndIf  
            
            pObject\Release()                            ;
          EndIf 
          
          pEnum\Release()
        EndIf 
        pServices\Release()
      EndIf
      pLocator\Release()                                               ;
    EndIf 
  EndIf 
  CoUninitialize_()
EndIf 

; CoFreeUnusedLibraries_()

Code : Tout sélectionner

;Coder celtic88 2016(c)

DataSection
  CLSID_WbemLocator:
  Data.l  $4590F811
  Data.w  $1D3A
  Data.w  $11D0
  Data.b $89, $1F, $0, $AA, $0, $4B, $2E, $24
  IID_IWbemLocator:
  Data.l  $DC12A687
  Data.w  $737F
  Data.w  $11CF
  Data.b $88, $4D, $0, $AA, $0, $4B, $2E, $24
EndDataSection

#CLSCTX_INPROC_SERVER = $1
#WBEM_FLAG_RETURN_IMMEDIATELY = $10
#WBEM_FLAG_FORWARD_ONLY = $20
#WBEM_INFINITE = $FFFFFFFF
#RPC_C_IMP_LEVEL_IMPERSONATE = 3
#RPC_C_AUTHN_LEVEL_DEFAULT = 0
#RPC_C_AUTHN_WINNT =       10
#RPC_C_AUTHZ_NONE =          0
#RPC_C_AUTHN_LEVEL_CALL=3
#EOAC_NONE = 0

;https://msdn.microsoft.com/en-us/library/aa394373(v=vs.85).aspx
Dim Win32_Processor_class_Syntax.s(56)
Win32_Processor_class_Syntax(0) = "AddressWidth"
Win32_Processor_class_Syntax(1) = "Architecture"
Win32_Processor_class_Syntax(2) = "AssetTag"
Win32_Processor_class_Syntax(3) = "Availability"
Win32_Processor_class_Syntax(4) = "Caption"
Win32_Processor_class_Syntax(5) = "Characteristics"
Win32_Processor_class_Syntax(6) = "ConfigManagerErrorCode"
Win32_Processor_class_Syntax(7) = "ConfigManagerUserConfig"
Win32_Processor_class_Syntax(8) = "CpuStatus"
Win32_Processor_class_Syntax(9) = "CreationClassName"
Win32_Processor_class_Syntax(10) = "CurrentClockSpeed"
Win32_Processor_class_Syntax(11) = "CurrentVoltage"
Win32_Processor_class_Syntax(12) = "DataWidth"
Win32_Processor_class_Syntax(13) = "Description"
Win32_Processor_class_Syntax(14) = "DeviceID"
Win32_Processor_class_Syntax(15) = "ErrorCleared"
Win32_Processor_class_Syntax(16) = "ErrorDescription"
Win32_Processor_class_Syntax(17) = "ExtClock"
Win32_Processor_class_Syntax(18) = "Family"
Win32_Processor_class_Syntax(19) = "InstallDate"
Win32_Processor_class_Syntax(20) = "L2CacheSize"
Win32_Processor_class_Syntax(21) = "L2CacheSpeed"
Win32_Processor_class_Syntax(22) = "L3CacheSize"
Win32_Processor_class_Syntax(23) = "L3CacheSpeed"
Win32_Processor_class_Syntax(24) = "LastErrorCode"
Win32_Processor_class_Syntax(25) = "Level"
Win32_Processor_class_Syntax(26) = "LoadPercentage"
Win32_Processor_class_Syntax(27) = "Manufacturer"
Win32_Processor_class_Syntax(28) = "MaxClockSpeed"
Win32_Processor_class_Syntax(29) = "Name"
Win32_Processor_class_Syntax(30) = "NumberOfCores"
Win32_Processor_class_Syntax(31) = "NumberOfEnabledCore"
Win32_Processor_class_Syntax(32) = "NumberOfLogicalProcessors"
Win32_Processor_class_Syntax(33) = "OtherFamilyDescription"
Win32_Processor_class_Syntax(34) = "PartNumber"
Win32_Processor_class_Syntax(35) = "PNPDeviceID"
Win32_Processor_class_Syntax(36) = "PowerManagementCapabilities[]"
Win32_Processor_class_Syntax(37) = "PowerManagementSupported"
Win32_Processor_class_Syntax(38) = "ProcessorId"
Win32_Processor_class_Syntax(39) = "ProcessorType"
Win32_Processor_class_Syntax(40) = "Revision"
Win32_Processor_class_Syntax(41) = "Role"
Win32_Processor_class_Syntax(42) = "SecondLevelAddressTranslationExtensions"
Win32_Processor_class_Syntax(43) = "SerialNumber"
Win32_Processor_class_Syntax(44) = "SocketDesignation"
Win32_Processor_class_Syntax(45) = "Status"
Win32_Processor_class_Syntax(46) = "StatusInfo"
Win32_Processor_class_Syntax(47) = "Stepping"
Win32_Processor_class_Syntax(48) = "SystemCreationClassName"
Win32_Processor_class_Syntax(49) = "SystemName"
Win32_Processor_class_Syntax(50) = "ThreadCount"
Win32_Processor_class_Syntax(51) = "UniqueId"
Win32_Processor_class_Syntax(52) = "UpgradeMethod"
Win32_Processor_class_Syntax(53) = "Version"
Win32_Processor_class_Syntax(54) = "VirtualizationFirmwareEnabled"
Win32_Processor_class_Syntax(55) = "VMMonitorModeExtensions"
Win32_Processor_class_Syntax(56) = "VoltageCaps"

If CoInitializeEx_(0, #COINIT_MULTITHREADED) = #S_OK
  
  If CoInitializeSecurity_(0, -1, 0, 0, #RPC_C_AUTHN_LEVEL_DEFAULT, #RPC_C_IMP_LEVEL_IMPERSONATE, 0, 0, 0) = #S_OK
    
    locator.IWbemLocator
    If CoCreateInstance_(?CLSID_WbemLocator, 0, #CLSCTX_INPROC_SERVER, ?IID_IWbemLocator, @locator) = #S_OK
      
      services.IWbemServices
      If locator\ConnectServer(@"ROOT\CIMV2", 0, 0, 0, 0, 0, 0, @services) = #S_OK
        
        CoSetProxyBlanket_(services, #RPC_C_AUTHN_WINNT, #RPC_C_AUTHZ_NONE, 0, #RPC_C_AUTHN_LEVEL_CALL, #RPC_C_IMP_LEVEL_IMPERSONATE, 0, #EOAC_NONE);
        e.IEnumWbemClassObject          
        If services\ExecQuery(@"WQL", @"SELECT * FROM Win32_Processor", #WBEM_FLAG_RETURN_IMMEDIATELY | #WBEM_FLAG_FORWARD_ONLY, 0, @e) = #S_OK
          
          Var.VARIANT
          u.l          
          
          object.IWbemClassObject
          
          While (e\Next(#WBEM_INFINITE, 1, @object, @u) = #S_OK)
            
            For gg=0 To 56
              CalssPro.s = Win32_Processor_class_Syntax(gg) 
              VariantInit_(@Var);            
              If object\Get(@CalssPro, 0, @Var, 0, 0) = #S_OK
                Select Var\vt
                  Case #VT_I4
                    Debug CalssPro + " : " + Str(Var\lVal)
                  Case #VT_DISPATCH
                    ;
                  Case #VT_BSTR
                    Debug CalssPro + " : " + PeekS(Var\bstrVal)
                  Case #VT_EMPTY
                    ;                  
                EndSelect
                VariantClear_(@Var); 
              EndIf
            Next
            
            object\Release()
          Wend
          e\Release()
        EndIf
        services\Release()
      EndIf
      locator\Release()
    EndIf
  EndIf
  CoUninitialize_();
EndIf 

Re: Obtenir des informations sur processeur avec "WMI"

Publié : mer. 09/nov./2016 16:03
par Ar-S
Je mets de coté, merci celtic88
En PB5.50 sous W10 il faut commenter #WBEM_INFINITE mais ça fonctionne.

Re: Obtenir des informations sur processeur avec "WMI"

Publié : mer. 09/nov./2016 17:24
par Kwai chang caine
Sous W7 aussi
Merci du partage 8)

Re: Obtenir des informations sur processeur avec "WMI"

Publié : mer. 09/nov./2016 17:49
par GallyHC
Bonjour,

Merci pour ce partage, je met aussi de coté.

Cordialement,
GallyHC

Re: Obtenir des informations sur processeur avec "WMI"

Publié : mer. 09/nov./2016 23:44
par celtic88
Pas de quoi les amis,,

voilla code bonus pour vous :)

- retirer plus d'info sur votre PC

Code : Tout sélectionner

;Coder celtic88 2016(c)

DataSection
  CLSID_WbemLocator:
  Data.l  $4590F811
  Data.w  $1D3A
  Data.w  $11D0
  Data.b $89, $1F, $0, $AA, $0, $4B, $2E, $24
  IID_IWbemLocator:
  Data.l  $DC12A687
  Data.w  $737F
  Data.w  $11CF
  Data.b $88, $4D, $0, $AA, $0, $4B, $2E, $24
EndDataSection

#CLSCTX_INPROC_SERVER = $1
#WBEM_FLAG_RETURN_IMMEDIATELY = $10
#WBEM_FLAG_FORWARD_ONLY = $20
#WBEM_INFINITE = $FFFFFFFF
#RPC_C_IMP_LEVEL_IMPERSONATE = 3
#RPC_C_AUTHN_LEVEL_DEFAULT = 0
#RPC_C_AUTHN_WINNT =       10
#RPC_C_AUTHZ_NONE =          0
#RPC_C_AUTHN_LEVEL_CALL=3
#EOAC_NONE = 0

;https://msdn.microsoft.com/en-us/library/aa394372(v=vs.85).aspx
Dim Win32_Process_class_Syntax.s(44)
Win32_Process_class_Syntax.s(0) = "CreationClassName"
Win32_Process_class_Syntax.s(1) = "Caption"
Win32_Process_class_Syntax.s(2) = "CommandLine"
Win32_Process_class_Syntax.s(3) = "CreationDate"
Win32_Process_class_Syntax.s(4) = "CSCreationClassName"
Win32_Process_class_Syntax.s(5) = "CSName"
Win32_Process_class_Syntax.s(6) = "Description"
Win32_Process_class_Syntax.s(7) = "ExecutablePath"
Win32_Process_class_Syntax.s(8) = "ExecutionState"
Win32_Process_class_Syntax.s(9) = "Handle"
Win32_Process_class_Syntax.s(10) = "HandleCount"
Win32_Process_class_Syntax.s(11) = "InstallDate"
Win32_Process_class_Syntax.s(12) = "KernelModeTime"
Win32_Process_class_Syntax.s(13) = "MaximumWorkingSetSize"
Win32_Process_class_Syntax.s(14) = "MinimumWorkingSetSize"
Win32_Process_class_Syntax.s(15) = "Name"
Win32_Process_class_Syntax.s(16) = "OSCreationClassName"
Win32_Process_class_Syntax.s(17) = "OSName"
Win32_Process_class_Syntax.s(18) = "OtherOperationCount"
Win32_Process_class_Syntax.s(19) = "OtherTransferCount"
Win32_Process_class_Syntax.s(20) = "PageFaults"
Win32_Process_class_Syntax.s(21) = "PageFileUsage"
Win32_Process_class_Syntax.s(22) = "ParentProcessId"
Win32_Process_class_Syntax.s(23) = "PeakPageFileUsage"
Win32_Process_class_Syntax.s(24) = "PeakVirtualSize"
Win32_Process_class_Syntax.s(25) = "PeakWorkingSetSize"
Win32_Process_class_Syntax.s(26) = "Priority = NULL"
Win32_Process_class_Syntax.s(27) = "PrivatePageCount"
Win32_Process_class_Syntax.s(28) = "ProcessId"
Win32_Process_class_Syntax.s(29) = "QuotaNonPagedPoolUsage"
Win32_Process_class_Syntax.s(30) = "QuotaPagedPoolUsage"
Win32_Process_class_Syntax.s(31) = "QuotaPeakNonPagedPoolUsage"
Win32_Process_class_Syntax.s(32) = "QuotaPeakPagedPoolUsage"
Win32_Process_class_Syntax.s(33) = "ReadOperationCount"
Win32_Process_class_Syntax.s(34) = "ReadTransferCount"
Win32_Process_class_Syntax.s(35) = "SessionId"
Win32_Process_class_Syntax.s(36) = "Status"
Win32_Process_class_Syntax.s(37) = "TerminationDate"
Win32_Process_class_Syntax.s(38) = "ThreadCount"
Win32_Process_class_Syntax.s(39) = "UserModeTime"
Win32_Process_class_Syntax.s(40) = "VirtualSize"
Win32_Process_class_Syntax.s(41) = "WindowsVersion"
Win32_Process_class_Syntax.s(42) = "WorkingSetSize"
Win32_Process_class_Syntax.s(43) = "WriteOperationCount"
Win32_Process_class_Syntax.s(44) = "WriteTransferCount"

;https://msdn.microsoft.com/en-us/library/aa394463(v=vs.85).aspx
Dim Win32_SoundDevice_class_Syntax.s(22)
Win32_SoundDevice_class_Syntax.s(0) = "Availability"
Win32_SoundDevice_class_Syntax.s(1) = "Caption"
Win32_SoundDevice_class_Syntax.s(2) = "ConfigManagerErrorCode"
Win32_SoundDevice_class_Syntax.s(3) = "ConfigManagerUserConfig"
Win32_SoundDevice_class_Syntax.s(4) = "CreationClassName"
Win32_SoundDevice_class_Syntax.s(5) = "Description"
Win32_SoundDevice_class_Syntax.s(6) = "DeviceID"
Win32_SoundDevice_class_Syntax.s(7) = "DMABufferSize"
Win32_SoundDevice_class_Syntax.s(8) = "ErrorCleared"
Win32_SoundDevice_class_Syntax.s(9) = "ErrorDescription"
Win32_SoundDevice_class_Syntax.s(10) = "InstallDate"
Win32_SoundDevice_class_Syntax.s(11) = "LastErrorCode"
Win32_SoundDevice_class_Syntax.s(12) = "Manufacturer"
Win32_SoundDevice_class_Syntax.s(13) = "MPU401Address"
Win32_SoundDevice_class_Syntax.s(14) = "Name"
Win32_SoundDevice_class_Syntax.s(15) = "PNPDeviceID"
Win32_SoundDevice_class_Syntax.s(16) = "PowerManagementCapabilities[]"
Win32_SoundDevice_class_Syntax.s(17) = "PowerManagementSupported"
Win32_SoundDevice_class_Syntax.s(18) = "ProductName"
Win32_SoundDevice_class_Syntax.s(19) = "Status"
Win32_SoundDevice_class_Syntax.s(20) = "StatusInfo"
Win32_SoundDevice_class_Syntax.s(21) = "SystemCreationClassName"
Win32_SoundDevice_class_Syntax.s(22) = "SystemName"

;https://msdn.microsoft.com/en-us/library/aa394074(v=vs.85).aspx
Dim Win32_Battery_class_Syntax.s(32)
Win32_Battery_class_Syntax.s(0) = "Availability"
Win32_Battery_class_Syntax.s(1) = "BatteryRechargeTime"
Win32_Battery_class_Syntax.s(2) = "BatteryStatus"
Win32_Battery_class_Syntax.s(3) = "Caption"
Win32_Battery_class_Syntax.s(4) = "Chemistry"
Win32_Battery_class_Syntax.s(5) = "ConfigManagerErrorCode"
Win32_Battery_class_Syntax.s(6) = "ConfigManagerUserConfig"
Win32_Battery_class_Syntax.s(7) = "CreationClassName"
Win32_Battery_class_Syntax.s(8) = "Description"
Win32_Battery_class_Syntax.s(9) = "DesignCapacity"
Win32_Battery_class_Syntax.s(10) = "DesignVoltage"
Win32_Battery_class_Syntax.s(11) = "DeviceID"
Win32_Battery_class_Syntax.s(12) = "ErrorCleared"
Win32_Battery_class_Syntax.s(13) = "ErrorDescription"
Win32_Battery_class_Syntax.s(14) = "EstimatedChargeRemaining"
Win32_Battery_class_Syntax.s(15) = "EstimatedRunTime"
Win32_Battery_class_Syntax.s(16) = "ExpectedBatteryLife"
Win32_Battery_class_Syntax.s(17) = "ExpectedLife"
Win32_Battery_class_Syntax.s(18) = "FullChargeCapacity"
Win32_Battery_class_Syntax.s(19) = "InstallDate"
Win32_Battery_class_Syntax.s(20) = "LastErrorCode"
Win32_Battery_class_Syntax.s(21) = "MaxRechargeTime"
Win32_Battery_class_Syntax.s(22) = "Name"
Win32_Battery_class_Syntax.s(23) = "PNPDeviceID"
Win32_Battery_class_Syntax.s(24) = "PowerManagementCapabilities[]"
Win32_Battery_class_Syntax.s(25) = "PowerManagementSupported"
Win32_Battery_class_Syntax.s(26) = "SmartBatteryVersion"
Win32_Battery_class_Syntax.s(27) = "Status"
Win32_Battery_class_Syntax.s(28) = "StatusInfo"
Win32_Battery_class_Syntax.s(29) = "SystemCreationClassName"
Win32_Battery_class_Syntax.s(30) = "SystemName"
Win32_Battery_class_Syntax.s(31) = "TimeOnBattery"
Win32_Battery_class_Syntax.s(32) = "TimeToFullCharge"

;https://msdn.microsoft.com/en-us/library/aa394077(v=vs.85).aspx
Dim Win32_BIOS_class_Syntax.s(30)
Win32_BIOS_class_Syntax.s(0) = "BiosCharacteristics[]"
Win32_BIOS_class_Syntax.s(1) = "BIOSVersion[]"
Win32_BIOS_class_Syntax.s(2) = "BuildNumber"
Win32_BIOS_class_Syntax.s(3) = "Caption"
Win32_BIOS_class_Syntax.s(4) = "CodeSet"
Win32_BIOS_class_Syntax.s(5) = "CurrentLanguage"
Win32_BIOS_class_Syntax.s(6) = "Description"
Win32_BIOS_class_Syntax.s(7) = "EmbeddedControllerMajorVersion"
Win32_BIOS_class_Syntax.s(8) = "EmbeddedControllerMinorVersion"
Win32_BIOS_class_Syntax.s(9) = "IdentificationCode"
Win32_BIOS_class_Syntax.s(10) = "InstallableLanguages"
Win32_BIOS_class_Syntax.s(11) = "InstallDate"
Win32_BIOS_class_Syntax.s(12) = "LanguageEdition"
Win32_BIOS_class_Syntax.s(13) = "ListOfLanguages[]"
Win32_BIOS_class_Syntax.s(14) = "Manufacturer"
Win32_BIOS_class_Syntax.s(15) = "Name"
Win32_BIOS_class_Syntax.s(16) = "OtherTargetOS"
Win32_BIOS_class_Syntax.s(17) = "PrimaryBIOS"
Win32_BIOS_class_Syntax.s(18) = "ReleaseDate"
Win32_BIOS_class_Syntax.s(19) = "SerialNumber"
Win32_BIOS_class_Syntax.s(20) = "SMBIOSBIOSVersion"
Win32_BIOS_class_Syntax.s(21) = "SMBIOSMajorVersion"
Win32_BIOS_class_Syntax.s(22) = "SMBIOSMinorVersion"
Win32_BIOS_class_Syntax.s(23) = "SMBIOSPresent"
Win32_BIOS_class_Syntax.s(24) = "SoftwareElementID"
Win32_BIOS_class_Syntax.s(25) = "SoftwareElementState"
Win32_BIOS_class_Syntax.s(26) = "Status"
Win32_BIOS_class_Syntax.s(27) = "SystemBiosMajorVersion"
Win32_BIOS_class_Syntax.s(28) = "SystemBiosMinorVersion"
Win32_BIOS_class_Syntax.s(29) = "TargetOperatingSystem"
Win32_BIOS_class_Syntax.s(30) = "Version"

;https://msdn.microsoft.com/en-us/library/aa394512(v=vs.85).aspx
Dim Win32_VideoController_class_Syntax.s(58)
Win32_VideoController_class_Syntax.s(0) = "AcceleratorCapabilities[]"
Win32_VideoController_class_Syntax.s(1) = "AdapterCompatibility"
Win32_VideoController_class_Syntax.s(2) = "AdapterDACType"
Win32_VideoController_class_Syntax.s(3) = "AdapterRAM"
Win32_VideoController_class_Syntax.s(4) = "Availability"
Win32_VideoController_class_Syntax.s(5) = "CapabilityDescriptions[]"
Win32_VideoController_class_Syntax.s(6) = "Caption"
Win32_VideoController_class_Syntax.s(7) = "ColorTableEntries"
Win32_VideoController_class_Syntax.s(8) = "ConfigManagerErrorCode"
Win32_VideoController_class_Syntax.s(9) = "ConfigManagerUserConfig"
Win32_VideoController_class_Syntax.s(10) = "CreationClassName"
Win32_VideoController_class_Syntax.s(11) = "CurrentBitsPerPixel"
Win32_VideoController_class_Syntax.s(12) = "CurrentHorizontalResolution"
Win32_VideoController_class_Syntax.s(13) = "CurrentNumberOfColors"
Win32_VideoController_class_Syntax.s(14) = "CurrentNumberOfColumns"
Win32_VideoController_class_Syntax.s(15) = "CurrentNumberOfRows"
Win32_VideoController_class_Syntax.s(16) = "CurrentRefreshRate"
Win32_VideoController_class_Syntax.s(17) = "CurrentScanMode"
Win32_VideoController_class_Syntax.s(18) = "CurrentVerticalResolution"
Win32_VideoController_class_Syntax.s(19) = "Description"
Win32_VideoController_class_Syntax.s(20) = "DeviceID"
Win32_VideoController_class_Syntax.s(21) = "DeviceSpecificPens"
Win32_VideoController_class_Syntax.s(22) = "DitherType"
Win32_VideoController_class_Syntax.s(23) = "DriverDate"
Win32_VideoController_class_Syntax.s(24) = "DriverVersion"
Win32_VideoController_class_Syntax.s(25) = "ErrorCleared"
Win32_VideoController_class_Syntax.s(26) = "ErrorDescription"
Win32_VideoController_class_Syntax.s(27) = "ICMIntent"
Win32_VideoController_class_Syntax.s(28) = "ICMMethod"
Win32_VideoController_class_Syntax.s(29) = "InfFilename"
Win32_VideoController_class_Syntax.s(30) = "InfSection"
Win32_VideoController_class_Syntax.s(31) = "InstallDate"
Win32_VideoController_class_Syntax.s(32) = "InstalledDisplayDrivers"
Win32_VideoController_class_Syntax.s(33) = "LastErrorCode"
Win32_VideoController_class_Syntax.s(34) = "MaxMemorySupported"
Win32_VideoController_class_Syntax.s(35) = "MaxNumberControlled"
Win32_VideoController_class_Syntax.s(36) = "MaxRefreshRate"
Win32_VideoController_class_Syntax.s(37) = "MinRefreshRate"
Win32_VideoController_class_Syntax.s(38) = "Monochrome"
Win32_VideoController_class_Syntax.s(39) = "Name"
Win32_VideoController_class_Syntax.s(40) = "NumberOfColorPlanes"
Win32_VideoController_class_Syntax.s(41) = "NumberOfVideoPages"
Win32_VideoController_class_Syntax.s(42) = "PNPDeviceID"
Win32_VideoController_class_Syntax.s(43) = "PowerManagementCapabilities[]"
Win32_VideoController_class_Syntax.s(44) = "PowerManagementSupported"
Win32_VideoController_class_Syntax.s(45) = "ProtocolSupported"
Win32_VideoController_class_Syntax.s(46) = "ReservedSystemPaletteEntries"
Win32_VideoController_class_Syntax.s(47) = "SpecificationVersion"
Win32_VideoController_class_Syntax.s(48) = "Status"
Win32_VideoController_class_Syntax.s(49) = "StatusInfo"
Win32_VideoController_class_Syntax.s(50) = "SystemCreationClassName"
Win32_VideoController_class_Syntax.s(51) = "SystemName"
Win32_VideoController_class_Syntax.s(52) = "SystemPaletteEntries"
Win32_VideoController_class_Syntax.s(53) = "TimeOfLastReset"
Win32_VideoController_class_Syntax.s(54) = "VideoArchitecture"
Win32_VideoController_class_Syntax.s(55) = "VideoMemoryType"
Win32_VideoController_class_Syntax.s(56) = "VideoMode"
Win32_VideoController_class_Syntax.s(57) = "VideoModeDescription"
Win32_VideoController_class_Syntax.s(58) = "VideoProcessor"

;https://msdn.microsoft.com/en-us/library/aa394102(v=vs.85).aspx
Dim Win32_ComputerSystem_class_Syntax.s(63)
Win32_ComputerSystem_class_Syntax.s(0) = "AdminPasswordStatus"
Win32_ComputerSystem_class_Syntax.s(1) = "AutomaticManagedPagefile"
Win32_ComputerSystem_class_Syntax.s(2) = "AutomaticResetBootOption"
Win32_ComputerSystem_class_Syntax.s(3) = "AutomaticResetCapability"
Win32_ComputerSystem_class_Syntax.s(4) = "BootOptionOnLimit"
Win32_ComputerSystem_class_Syntax.s(5) = "BootOptionOnWatchDog"
Win32_ComputerSystem_class_Syntax.s(6) = "BootROMSupported"
Win32_ComputerSystem_class_Syntax.s(7) = "BootupState"
Win32_ComputerSystem_class_Syntax.s(8) = "BootStatus[]"
Win32_ComputerSystem_class_Syntax.s(9) = "Caption"
Win32_ComputerSystem_class_Syntax.s(10) = "ChassisBootupState"
Win32_ComputerSystem_class_Syntax.s(11) = "ChassisSKUNumber"
Win32_ComputerSystem_class_Syntax.s(12) = "CreationClassName"
Win32_ComputerSystem_class_Syntax.s(13) = "CurrentTimeZone"
Win32_ComputerSystem_class_Syntax.s(14) = "DaylightInEffect"
Win32_ComputerSystem_class_Syntax.s(15) = "Description"
Win32_ComputerSystem_class_Syntax.s(16) = "DNSHostName"
Win32_ComputerSystem_class_Syntax.s(17) = "Domain"
Win32_ComputerSystem_class_Syntax.s(18) = "DomainRole"
Win32_ComputerSystem_class_Syntax.s(19) = "EnableDaylightSavingsTime"
Win32_ComputerSystem_class_Syntax.s(20) = "FrontPanelResetStatus"
Win32_ComputerSystem_class_Syntax.s(21) = "HypervisorPresent"
Win32_ComputerSystem_class_Syntax.s(22) = "InfraredSupported"
Win32_ComputerSystem_class_Syntax.s(23) = "InitialLoadInfo[]"
Win32_ComputerSystem_class_Syntax.s(24) = "InstallDate"
Win32_ComputerSystem_class_Syntax.s(25) = "KeyboardPasswordStatus"
Win32_ComputerSystem_class_Syntax.s(26) = "LastLoadInfo"
Win32_ComputerSystem_class_Syntax.s(27) = "Manufacturer"
Win32_ComputerSystem_class_Syntax.s(28) = "Model"
Win32_ComputerSystem_class_Syntax.s(29) = "Name"
Win32_ComputerSystem_class_Syntax.s(30) = "NameFormat"
Win32_ComputerSystem_class_Syntax.s(31) = "NetworkServerModeEnabled"
Win32_ComputerSystem_class_Syntax.s(32) = "NumberOfLogicalProcessors"
Win32_ComputerSystem_class_Syntax.s(33) = "NumberOfProcessors"
Win32_ComputerSystem_class_Syntax.s(34) = "OEMLogoBitmap[]"
Win32_ComputerSystem_class_Syntax.s(35) = "OEMStringArray[]"
Win32_ComputerSystem_class_Syntax.s(36) = "PartOfDomain"
Win32_ComputerSystem_class_Syntax.s(37) = "PauseAfterReset"
Win32_ComputerSystem_class_Syntax.s(38) = "PCSystemType"
Win32_ComputerSystem_class_Syntax.s(39) = "PCSystemTypeEx"
Win32_ComputerSystem_class_Syntax.s(40) = "PowerManagementCapabilities[]"
Win32_ComputerSystem_class_Syntax.s(41) = "PowerManagementSupported"
Win32_ComputerSystem_class_Syntax.s(42) = "PowerOnPasswordStatus"
Win32_ComputerSystem_class_Syntax.s(43) = "PowerState"
Win32_ComputerSystem_class_Syntax.s(44) = "PowerSupplyState"
Win32_ComputerSystem_class_Syntax.s(45) = "PrimaryOwnerContact"
Win32_ComputerSystem_class_Syntax.s(46) = "PrimaryOwnerName"
Win32_ComputerSystem_class_Syntax.s(47) = "ResetCapability"
Win32_ComputerSystem_class_Syntax.s(48) = "ResetCount"
Win32_ComputerSystem_class_Syntax.s(49) = "ResetLimit"
Win32_ComputerSystem_class_Syntax.s(50) = "Roles[]"
Win32_ComputerSystem_class_Syntax.s(51) = "Status"
Win32_ComputerSystem_class_Syntax.s(52) = "SupportContactDescription[]"
Win32_ComputerSystem_class_Syntax.s(53) = "SystemFamily"
Win32_ComputerSystem_class_Syntax.s(54) = "SystemSKUNumber"
Win32_ComputerSystem_class_Syntax.s(55) = "SystemStartupDelay"
Win32_ComputerSystem_class_Syntax.s(56) = "SystemStartupOptions[]"
Win32_ComputerSystem_class_Syntax.s(57) = "SystemStartupSetting"
Win32_ComputerSystem_class_Syntax.s(58) = "SystemType"
Win32_ComputerSystem_class_Syntax.s(59) = "ThermalState"
Win32_ComputerSystem_class_Syntax.s(60) = "TotalPhysicalMemory"
Win32_ComputerSystem_class_Syntax.s(61) = "UserName"
Win32_ComputerSystem_class_Syntax.s(62) = "WakeUpType"
Win32_ComputerSystem_class_Syntax.s(63) = "Workgroup"

;https://msdn.microsoft.com/en-us/library/aa394121(v=vs.85).aspx
Dim Win32_Desktop_class_Syntax.s(20)
Win32_Desktop_class_Syntax.s(0) = "Caption"
Win32_Desktop_class_Syntax.s(1) = "Description"
Win32_Desktop_class_Syntax.s(2) = "SettingID"
Win32_Desktop_class_Syntax.s(3) = "BorderWidth"
Win32_Desktop_class_Syntax.s(4) = "CoolSwitch"
Win32_Desktop_class_Syntax.s(5) = "CursorBlinkRate"
Win32_Desktop_class_Syntax.s(6) = "DragFullWindows"
Win32_Desktop_class_Syntax.s(7) = "GridGranularity"
Win32_Desktop_class_Syntax.s(8) = "IconSpacing"
Win32_Desktop_class_Syntax.s(9) = "IconTitleFaceName"
Win32_Desktop_class_Syntax.s(10) = "IconTitleSize"
Win32_Desktop_class_Syntax.s(11) = "IconTitleWrap"
Win32_Desktop_class_Syntax.s(12) = "Name"
Win32_Desktop_class_Syntax.s(13) = "Pattern"
Win32_Desktop_class_Syntax.s(14) = "ScreenSaverActive"
Win32_Desktop_class_Syntax.s(15) = "ScreenSaverExecutable"
Win32_Desktop_class_Syntax.s(16) = "ScreenSaverSecure"
Win32_Desktop_class_Syntax.s(17) = "ScreenSaverTimeout"
Win32_Desktop_class_Syntax.s(18) = "Wallpaper"
Win32_Desktop_class_Syntax.s(19) = "WallpaperStretched"
Win32_Desktop_class_Syntax.s(20) = "WallpaperTiled"

;https://msdn.microsoft.com/en-us/library/aa394132(v=vs.85).aspx
Dim Win32_DiskDrive_class_Syntax.s(50)
Win32_DiskDrive_class_Syntax.s(0) = "Availability"
Win32_DiskDrive_class_Syntax.s(1) = "BytesPerSector"
Win32_DiskDrive_class_Syntax.s(2) = "Capabilities[]"
Win32_DiskDrive_class_Syntax.s(3) = "CapabilityDescriptions[]"
Win32_DiskDrive_class_Syntax.s(4) = "Caption"
Win32_DiskDrive_class_Syntax.s(5) = "CompressionMethod"
Win32_DiskDrive_class_Syntax.s(6) = "ConfigManagerErrorCode"
Win32_DiskDrive_class_Syntax.s(7) = "ConfigManagerUserConfig"
Win32_DiskDrive_class_Syntax.s(8) = "CreationClassName"
Win32_DiskDrive_class_Syntax.s(9) = "DefaultBlockSize"
Win32_DiskDrive_class_Syntax.s(10) = "Description"
Win32_DiskDrive_class_Syntax.s(11) = "DeviceID"
Win32_DiskDrive_class_Syntax.s(12) = "ErrorCleared"
Win32_DiskDrive_class_Syntax.s(13) = "ErrorDescription"
Win32_DiskDrive_class_Syntax.s(14) = "ErrorMethodology"
Win32_DiskDrive_class_Syntax.s(15) = "FirmwareRevision"
Win32_DiskDrive_class_Syntax.s(16) = "Index"
Win32_DiskDrive_class_Syntax.s(17) = "InstallDate"
Win32_DiskDrive_class_Syntax.s(18) = "InterfaceType"
Win32_DiskDrive_class_Syntax.s(19) = "LastErrorCode"
Win32_DiskDrive_class_Syntax.s(20) = "Manufacturer"
Win32_DiskDrive_class_Syntax.s(21) = "MaxBlockSize"
Win32_DiskDrive_class_Syntax.s(22) = "MaxMediaSize"
Win32_DiskDrive_class_Syntax.s(23) = "MediaLoaded"
Win32_DiskDrive_class_Syntax.s(24) = "MediaType"
Win32_DiskDrive_class_Syntax.s(25) = "MinBlockSize"
Win32_DiskDrive_class_Syntax.s(26) = "Model"
Win32_DiskDrive_class_Syntax.s(27) = "Name"
Win32_DiskDrive_class_Syntax.s(28) = "NeedsCleaning"
Win32_DiskDrive_class_Syntax.s(29) = "NumberOfMediaSupported"
Win32_DiskDrive_class_Syntax.s(30) = "Partitions"
Win32_DiskDrive_class_Syntax.s(31) = "PNPDeviceID"
Win32_DiskDrive_class_Syntax.s(32) = "PowerManagementCapabilities[]"
Win32_DiskDrive_class_Syntax.s(33) = "PowerManagementSupported"
Win32_DiskDrive_class_Syntax.s(34) = "SCSIBus"
Win32_DiskDrive_class_Syntax.s(35) = "SCSILogicalUnit"
Win32_DiskDrive_class_Syntax.s(36) = "SCSIPort"
Win32_DiskDrive_class_Syntax.s(37) = "SCSITargetId"
Win32_DiskDrive_class_Syntax.s(38) = "SectorsPerTrack"
Win32_DiskDrive_class_Syntax.s(39) = "SerialNumber"
Win32_DiskDrive_class_Syntax.s(40) = "Signature"
Win32_DiskDrive_class_Syntax.s(41) = "Size"
Win32_DiskDrive_class_Syntax.s(42) = "Status"
Win32_DiskDrive_class_Syntax.s(43) = "StatusInfo"
Win32_DiskDrive_class_Syntax.s(44) = "SystemCreationClassName"
Win32_DiskDrive_class_Syntax.s(45) = "SystemName"
Win32_DiskDrive_class_Syntax.s(46) = "TotalCylinders"
Win32_DiskDrive_class_Syntax.s(47) = "TotalHeads"
Win32_DiskDrive_class_Syntax.s(48) = "TotalSectors"
Win32_DiskDrive_class_Syntax.s(49) = "TotalTracks"
Win32_DiskDrive_class_Syntax.s(50) = "TracksPerCylinder"

;https://msdn.microsoft.com/en-us/library/aa394166(v=vs.85).aspx
Dim Win32_Keyboard_class_Syntax.s(22)
Win32_Keyboard_class_Syntax.s(0) = "Availability"
Win32_Keyboard_class_Syntax.s(1) = "Caption"
Win32_Keyboard_class_Syntax.s(2) = "ConfigManagerErrorCode"
Win32_Keyboard_class_Syntax.s(3) = "ConfigManagerUserConfig"
Win32_Keyboard_class_Syntax.s(4) = "CreationClassName"
Win32_Keyboard_class_Syntax.s(5) = "Description"
Win32_Keyboard_class_Syntax.s(6) = "DeviceID"
Win32_Keyboard_class_Syntax.s(7) = "ErrorCleared"
Win32_Keyboard_class_Syntax.s(8) = "ErrorDescription"
Win32_Keyboard_class_Syntax.s(9) = "InstallDate"
Win32_Keyboard_class_Syntax.s(10) = "IsLocked"
Win32_Keyboard_class_Syntax.s(11) = "LastErrorCode"
Win32_Keyboard_class_Syntax.s(12) = "Layout"
Win32_Keyboard_class_Syntax.s(13) = "Name"
Win32_Keyboard_class_Syntax.s(14) = "NumberOfFunctionKeys"
Win32_Keyboard_class_Syntax.s(15) = "Password"
Win32_Keyboard_class_Syntax.s(16) = "PNPDeviceID"
Win32_Keyboard_class_Syntax.s(17) = "PowerManagementCapabilities[]"
Win32_Keyboard_class_Syntax.s(18) = "PowerManagementSupported"
Win32_Keyboard_class_Syntax.s(19) = "Status"
Win32_Keyboard_class_Syntax.s(20) = "StatusInfo"
Win32_Keyboard_class_Syntax.s(21) = "SystemCreationClassName"
Win32_Keyboard_class_Syntax.s(22) = "SystemName"

;https://msdn.microsoft.com/en-us/library/aa394347(v=vs.85).aspx
Dim Win32_PhysicalMemory_class_Syntax.s(35)
Win32_PhysicalMemory_class_Syntax.s(0) = "Attributes"
Win32_PhysicalMemory_class_Syntax.s(1) = "BankLabel"
Win32_PhysicalMemory_class_Syntax.s(2) = "Capacity"
Win32_PhysicalMemory_class_Syntax.s(3) = "Caption"
Win32_PhysicalMemory_class_Syntax.s(4) = "ConfiguredClockSpeed"
Win32_PhysicalMemory_class_Syntax.s(5) = "ConfiguredVoltage"
Win32_PhysicalMemory_class_Syntax.s(6) = "CreationClassName"
Win32_PhysicalMemory_class_Syntax.s(7) = "DataWidth"
Win32_PhysicalMemory_class_Syntax.s(8) = "Description"
Win32_PhysicalMemory_class_Syntax.s(9) = "DeviceLocator"
Win32_PhysicalMemory_class_Syntax.s(10) = "FormFactor"
Win32_PhysicalMemory_class_Syntax.s(11) = "HotSwappable"
Win32_PhysicalMemory_class_Syntax.s(12) = "InstallDate"
Win32_PhysicalMemory_class_Syntax.s(13) = "InterleaveDataDepth"
Win32_PhysicalMemory_class_Syntax.s(14) = "InterleavePosition"
Win32_PhysicalMemory_class_Syntax.s(15) = "Manufacturer"
Win32_PhysicalMemory_class_Syntax.s(16) = "MaxVoltage"
Win32_PhysicalMemory_class_Syntax.s(17) = "MemoryType"
Win32_PhysicalMemory_class_Syntax.s(18) = "MinVoltage"
Win32_PhysicalMemory_class_Syntax.s(19) = "Model"
Win32_PhysicalMemory_class_Syntax.s(20) = "Name"
Win32_PhysicalMemory_class_Syntax.s(21) = "OtherIdentifyingInfo"
Win32_PhysicalMemory_class_Syntax.s(22) = "PartNumber"
Win32_PhysicalMemory_class_Syntax.s(23) = "PositionInRow"
Win32_PhysicalMemory_class_Syntax.s(24) = "PoweredOn"
Win32_PhysicalMemory_class_Syntax.s(25) = "Removable"
Win32_PhysicalMemory_class_Syntax.s(26) = "Replaceable"
Win32_PhysicalMemory_class_Syntax.s(27) = "SerialNumber"
Win32_PhysicalMemory_class_Syntax.s(28) = "SKU"
Win32_PhysicalMemory_class_Syntax.s(29) = "SMBIOSMemoryType"
Win32_PhysicalMemory_class_Syntax.s(30) = "Speed"
Win32_PhysicalMemory_class_Syntax.s(31) = "Status"
Win32_PhysicalMemory_class_Syntax.s(32) = "Tag"
Win32_PhysicalMemory_class_Syntax.s(33) = "TotalWidth"
Win32_PhysicalMemory_class_Syntax.s(34) = "TypeDetail"
Win32_PhysicalMemory_class_Syntax.s(35) = "Version"

;https://msdn.microsoft.com/en-us/library/aa394122(v=vs.85).aspx
Dim Win32_DesktopMonitor_class_Syntax.s(27)
Win32_DesktopMonitor_class_Syntax(0)  = "Availability"
Win32_DesktopMonitor_class_Syntax(1)  = "Bandwidth"
Win32_DesktopMonitor_class_Syntax(2)  = "Caption"
Win32_DesktopMonitor_class_Syntax(3)  = "ConfigManagerErrorCode"
Win32_DesktopMonitor_class_Syntax(4)  = "ConfigManagerUserConfig"
Win32_DesktopMonitor_class_Syntax(5)  = "CreationClassName"
Win32_DesktopMonitor_class_Syntax(6)  = "Description"
Win32_DesktopMonitor_class_Syntax(7)  = "DeviceID"
Win32_DesktopMonitor_class_Syntax(8)  = "DisplayType"
Win32_DesktopMonitor_class_Syntax(9)  = "ErrorCleared"
Win32_DesktopMonitor_class_Syntax(10)  = "ErrorDescription"
Win32_DesktopMonitor_class_Syntax(11)  = "InstallDate"
Win32_DesktopMonitor_class_Syntax(12)  = "IsLocked"
Win32_DesktopMonitor_class_Syntax(13)  = "LastErrorCode"
Win32_DesktopMonitor_class_Syntax(14)  = "MonitorManufacturer"
Win32_DesktopMonitor_class_Syntax(15)  = "MonitorType"
Win32_DesktopMonitor_class_Syntax(16)  = "Name"
Win32_DesktopMonitor_class_Syntax(17)  = "PixelsPerXLogicalInch"
Win32_DesktopMonitor_class_Syntax(18)  = "PixelsPerYLogicalInch"
Win32_DesktopMonitor_class_Syntax(19)  = "PNPDeviceID"
Win32_DesktopMonitor_class_Syntax(20)  = "PowerManagementCapabilities[]"
Win32_DesktopMonitor_class_Syntax(21)  = "PowerManagementSupported"
Win32_DesktopMonitor_class_Syntax(22)  = "ScreenHeight"
Win32_DesktopMonitor_class_Syntax(23)  = "ScreenWidth"
Win32_DesktopMonitor_class_Syntax(24)  = "Status"
Win32_DesktopMonitor_class_Syntax(25)  = "StatusInfo"
Win32_DesktopMonitor_class_Syntax(26)  = "SystemCreationClassName"
Win32_DesktopMonitor_class_Syntax(27)  = "SystemName"

;https://msdn.microsoft.com/en-us/library/aa394204(v=vs.85).aspx
Dim Win32_MotherboardDevice_class_Syntax.s(21)
Win32_MotherboardDevice_class_Syntax.s(0) = "Availability"
Win32_MotherboardDevice_class_Syntax.s(1) = "Caption"
Win32_MotherboardDevice_class_Syntax.s(2) = "ConfigManagerErrorCode"
Win32_MotherboardDevice_class_Syntax.s(3) = "ConfigManagerUserConfig"
Win32_MotherboardDevice_class_Syntax.s(4) = "CreationClassName"
Win32_MotherboardDevice_class_Syntax.s(5) = "Description"
Win32_MotherboardDevice_class_Syntax.s(6) = "DeviceID"
Win32_MotherboardDevice_class_Syntax.s(7) = "ErrorCleared"
Win32_MotherboardDevice_class_Syntax.s(8) = "ErrorDescription"
Win32_MotherboardDevice_class_Syntax.s(9) = "InstallDate"
Win32_MotherboardDevice_class_Syntax.s(10) = "LastErrorCode"
Win32_MotherboardDevice_class_Syntax.s(11) = "Name"
Win32_MotherboardDevice_class_Syntax.s(12) = "PNPDeviceID"
Win32_MotherboardDevice_class_Syntax.s(13) = "PowerManagementCapabilities[]"
Win32_MotherboardDevice_class_Syntax.s(14) = "PowerManagementSupported"
Win32_MotherboardDevice_class_Syntax.s(15) = "PrimaryBusType"
Win32_MotherboardDevice_class_Syntax.s(16) = "RevisionNumber"
Win32_MotherboardDevice_class_Syntax.s(17) = "SecondaryBusType"
Win32_MotherboardDevice_class_Syntax.s(18) = "Status"
Win32_MotherboardDevice_class_Syntax.s(19) = "StatusInfo"
Win32_MotherboardDevice_class_Syntax.s(20) = "SystemCreationClassName"
Win32_MotherboardDevice_class_Syntax.s(21) = "SystemName"

;https://msdn.microsoft.com/en-us/library/aa394356(v=vs.85).aspx
Dim Win32_PointingDevice_class_Syntax.s(32)
Win32_PointingDevice_class_Syntax.s(0) = "Availability"
Win32_PointingDevice_class_Syntax.s(1) = "Caption"
Win32_PointingDevice_class_Syntax.s(2) = "ConfigManagerErrorCode"
Win32_PointingDevice_class_Syntax.s(3) = "ConfigManagerUserConfig"
Win32_PointingDevice_class_Syntax.s(4) = "CreationClassName"
Win32_PointingDevice_class_Syntax.s(5) = "Description"
Win32_PointingDevice_class_Syntax.s(6) = "DeviceID"
Win32_PointingDevice_class_Syntax.s(7) = "DeviceInterface"
Win32_PointingDevice_class_Syntax.s(8) = "DoubleSpeedThreshold"
Win32_PointingDevice_class_Syntax.s(9) = "ErrorCleared"
Win32_PointingDevice_class_Syntax.s(10) = "ErrorDescription"
Win32_PointingDevice_class_Syntax.s(11) = "Handedness"
Win32_PointingDevice_class_Syntax.s(12) = "HardwareType"
Win32_PointingDevice_class_Syntax.s(13) = "InfFileName"
Win32_PointingDevice_class_Syntax.s(14) = "InfSection"
Win32_PointingDevice_class_Syntax.s(15) = "InstallDate"
Win32_PointingDevice_class_Syntax.s(16) = "IsLocked"
Win32_PointingDevice_class_Syntax.s(17) = "LastErrorCode"
Win32_PointingDevice_class_Syntax.s(18) = "Manufacturer"
Win32_PointingDevice_class_Syntax.s(19) = "Name"
Win32_PointingDevice_class_Syntax.s(20) = "NumberOfButtons"
Win32_PointingDevice_class_Syntax.s(21) = "PNPDeviceID"
Win32_PointingDevice_class_Syntax.s(22) = "PointingType"
Win32_PointingDevice_class_Syntax.s(23) = "PowerManagementCapabilities[]"
Win32_PointingDevice_class_Syntax.s(24) = "PowerManagementSupported"
Win32_PointingDevice_class_Syntax.s(25) = "QuadSpeedThreshold"
Win32_PointingDevice_class_Syntax.s(26) = "Resolution"
Win32_PointingDevice_class_Syntax.s(27) = "SampleRate"
Win32_PointingDevice_class_Syntax.s(28) = "Status"
Win32_PointingDevice_class_Syntax.s(29) = "StatusInfo"
Win32_PointingDevice_class_Syntax.s(30) = "Synch"
Win32_PointingDevice_class_Syntax.s(31) = "SystemCreationClassName"
Win32_PointingDevice_class_Syntax.s(32) = "SystemName"

;https://msdn.microsoft.com/en-us/library/aa394216(v=vs.85).aspx
Dim Win32_NetworkAdapter_class_Syntax.s(39)
Win32_NetworkAdapter_class_Syntax.s(0) = "AdapterType"
Win32_NetworkAdapter_class_Syntax.s(1) = "AdapterTypeID"
Win32_NetworkAdapter_class_Syntax.s(2) = "AutoSense"
Win32_NetworkAdapter_class_Syntax.s(3) = "Availability"
Win32_NetworkAdapter_class_Syntax.s(4) = "Caption"
Win32_NetworkAdapter_class_Syntax.s(5) = "ConfigManagerErrorCode"
Win32_NetworkAdapter_class_Syntax.s(6) = "ConfigManagerUserConfig"
Win32_NetworkAdapter_class_Syntax.s(7) = "CreationClassName"
Win32_NetworkAdapter_class_Syntax.s(8) = "Description"
Win32_NetworkAdapter_class_Syntax.s(9) = "DeviceID"
Win32_NetworkAdapter_class_Syntax.s(10) = "ErrorCleared"
Win32_NetworkAdapter_class_Syntax.s(11) = "ErrorDescription"
Win32_NetworkAdapter_class_Syntax.s(12) = "GUID"
Win32_NetworkAdapter_class_Syntax.s(13) = "Index"
Win32_NetworkAdapter_class_Syntax.s(14) = "InstallDate"
Win32_NetworkAdapter_class_Syntax.s(15) = "Installed"
Win32_NetworkAdapter_class_Syntax.s(16) = "InterfaceIndex"
Win32_NetworkAdapter_class_Syntax.s(17) = "LastErrorCode"
Win32_NetworkAdapter_class_Syntax.s(18) = "MACAddress"
Win32_NetworkAdapter_class_Syntax.s(19) = "Manufacturer"
Win32_NetworkAdapter_class_Syntax.s(20) = "MaxNumberControlled"
Win32_NetworkAdapter_class_Syntax.s(21) = "MaxSpeed"
Win32_NetworkAdapter_class_Syntax.s(22) = "Name"
Win32_NetworkAdapter_class_Syntax.s(23) = "NetConnectionID"
Win32_NetworkAdapter_class_Syntax.s(24) = "NetConnectionStatus"
Win32_NetworkAdapter_class_Syntax.s(25) = "NetEnabled"
Win32_NetworkAdapter_class_Syntax.s(26) = "NetworkAddresses[]"
Win32_NetworkAdapter_class_Syntax.s(27) = "PermanentAddress"
Win32_NetworkAdapter_class_Syntax.s(28) = "PhysicalAdapter"
Win32_NetworkAdapter_class_Syntax.s(29) = "PNPDeviceID"
Win32_NetworkAdapter_class_Syntax.s(30) = "PowerManagementCapabilities[]"
Win32_NetworkAdapter_class_Syntax.s(31) = "PowerManagementSupported"
Win32_NetworkAdapter_class_Syntax.s(32) = "ProductName"
Win32_NetworkAdapter_class_Syntax.s(33) = "ServiceName"
Win32_NetworkAdapter_class_Syntax.s(34) = "Speed"
Win32_NetworkAdapter_class_Syntax.s(35) = "Status"
Win32_NetworkAdapter_class_Syntax.s(36) = "StatusInfo"
Win32_NetworkAdapter_class_Syntax.s(37) = "SystemCreationClassName"
Win32_NetworkAdapter_class_Syntax.s(38) = "SystemName"
Win32_NetworkAdapter_class_Syntax.s(39) = "TimeOfLastReset"

;https://msdn.microsoft.com/en-us/library/aa394239(v=vs.85).aspx
Dim Win32_OperatingSystem_class_Syntax.s(65)
Win32_OperatingSystem_class_Syntax.s(0) = "BootDevice"
Win32_OperatingSystem_class_Syntax.s(1) = "BuildNumber"
Win32_OperatingSystem_class_Syntax.s(2) = "BuildType"
Win32_OperatingSystem_class_Syntax.s(3) = "Caption"
Win32_OperatingSystem_class_Syntax.s(4) = "CodeSet"
Win32_OperatingSystem_class_Syntax.s(5) = "CountryCode"
Win32_OperatingSystem_class_Syntax.s(6) = "CreationClassName"
Win32_OperatingSystem_class_Syntax.s(7) = "CSCreationClassName"
Win32_OperatingSystem_class_Syntax.s(8) = "CSDVersion"
Win32_OperatingSystem_class_Syntax.s(9) = "CSName"
Win32_OperatingSystem_class_Syntax.s(10) = "CurrentTimeZone"
Win32_OperatingSystem_class_Syntax.s(11) = "DataExecutionPrevention_Available"
Win32_OperatingSystem_class_Syntax.s(12) = "DataExecutionPrevention_32BitApplications"
Win32_OperatingSystem_class_Syntax.s(13) = "DataExecutionPrevention_Drivers"
Win32_OperatingSystem_class_Syntax.s(14) = "DataExecutionPrevention_SupportPolicy"
Win32_OperatingSystem_class_Syntax.s(15) = "Debug"
Win32_OperatingSystem_class_Syntax.s(16) = "Description"
Win32_OperatingSystem_class_Syntax.s(17) = "Distributed"
Win32_OperatingSystem_class_Syntax.s(18) = "EncryptionLevel"
Win32_OperatingSystem_class_Syntax.s(19) = "ForegroundApplicationBoost = 2"
Win32_OperatingSystem_class_Syntax.s(20) = "FreePhysicalMemory"
Win32_OperatingSystem_class_Syntax.s(21) = "FreeSpaceInPagingFiles"
Win32_OperatingSystem_class_Syntax.s(22) = "FreeVirtualMemory"
Win32_OperatingSystem_class_Syntax.s(23) = "InstallDate"
Win32_OperatingSystem_class_Syntax.s(24) = "LargeSystemCache"
Win32_OperatingSystem_class_Syntax.s(25) = "LastBootUpTime"
Win32_OperatingSystem_class_Syntax.s(26) = "LocalDateTime"
Win32_OperatingSystem_class_Syntax.s(27) = "Locale"
Win32_OperatingSystem_class_Syntax.s(28) = "Manufacturer"
Win32_OperatingSystem_class_Syntax.s(29) = "MaxNumberOfProcesses"
Win32_OperatingSystem_class_Syntax.s(30) = "MaxProcessMemorySize"
Win32_OperatingSystem_class_Syntax.s(31) = "MUILanguages[]"
Win32_OperatingSystem_class_Syntax.s(32) = "Name"
Win32_OperatingSystem_class_Syntax.s(33) = "NumberOfLicensedUsers"
Win32_OperatingSystem_class_Syntax.s(34) = "NumberOfProcesses"
Win32_OperatingSystem_class_Syntax.s(35) = "NumberOfUsers"
Win32_OperatingSystem_class_Syntax.s(36) = "OperatingSystemSKU"
Win32_OperatingSystem_class_Syntax.s(37) = "Organization"
Win32_OperatingSystem_class_Syntax.s(38) = "OSArchitecture"
Win32_OperatingSystem_class_Syntax.s(39) = "OSLanguage"
Win32_OperatingSystem_class_Syntax.s(40) = "OSProductSuite"
Win32_OperatingSystem_class_Syntax.s(41) = "OSType"
Win32_OperatingSystem_class_Syntax.s(42) = "OtherTypeDescription"
Win32_OperatingSystem_class_Syntax.s(43) = "PAEEnabled"
Win32_OperatingSystem_class_Syntax.s(44) = "PlusProductID"
Win32_OperatingSystem_class_Syntax.s(45) = "PlusVersionNumber"
Win32_OperatingSystem_class_Syntax.s(46) = "PortableOperatingSystem"
Win32_OperatingSystem_class_Syntax.s(47) = "Primary"
Win32_OperatingSystem_class_Syntax.s(48) = "ProductType"
Win32_OperatingSystem_class_Syntax.s(49) = "RegisteredUser"
Win32_OperatingSystem_class_Syntax.s(50) = "SerialNumber"
Win32_OperatingSystem_class_Syntax.s(51) = "ServicePackMajorVersion"
Win32_OperatingSystem_class_Syntax.s(52) = "ServicePackMinorVersion"
Win32_OperatingSystem_class_Syntax.s(53) = "SizeStoredInPagingFiles"
Win32_OperatingSystem_class_Syntax.s(54) = "Status"
Win32_OperatingSystem_class_Syntax.s(55) = "SuiteMask"
Win32_OperatingSystem_class_Syntax.s(56) = "SystemDevice"
Win32_OperatingSystem_class_Syntax.s(57) = "SystemDirectory"
Win32_OperatingSystem_class_Syntax.s(58) = "SystemDrive"
Win32_OperatingSystem_class_Syntax.s(59) = "TotalSwapSpaceSize"
Win32_OperatingSystem_class_Syntax.s(60) = "TotalVirtualMemorySize"
Win32_OperatingSystem_class_Syntax.s(61) = "TotalVisibleMemorySize"
Win32_OperatingSystem_class_Syntax.s(62) = "Version"
Win32_OperatingSystem_class_Syntax.s(63) = "WindowsDirectory"
Win32_OperatingSystem_class_Syntax.s(64) = "QuantumLength"
Win32_OperatingSystem_class_Syntax.s(65) = "QuantumType"

Structure sWMI_Class_List
  Class_Name.s
  Array class_Syntax.s(0)
EndStructure

NewList WMI_Class_List.sWMI_Class_List()

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_Process"
CopyArray(Win32_Process_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_SoundDevice"
CopyArray(Win32_SoundDevice_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_Battery"
CopyArray(Win32_Battery_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_BIOS"
CopyArray(Win32_BIOS_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_VideoController"
CopyArray(Win32_VideoController_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_ComputerSystem"
CopyArray(Win32_ComputerSystem_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_Desktop"
CopyArray(Win32_Desktop_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_DiskDrive"
CopyArray(Win32_DiskDrive_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_Keyboard"
CopyArray(Win32_Keyboard_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_PhysicalMemory"
CopyArray(Win32_PhysicalMemory_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_DesktopMonitor"
CopyArray(Win32_DesktopMonitor_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_MotherboardDevice"
CopyArray(Win32_MotherboardDevice_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_PointingDevice"
CopyArray(Win32_PointingDevice_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_NetworkAdapter"
CopyArray(Win32_NetworkAdapter_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_OperatingSystem"
CopyArray(Win32_OperatingSystem_class_Syntax(),WMI_Class_List()\class_Syntax())


Procedure.b WMIGetProperties(*services.IWbemServices,WMIClassName.s,Array WMIclass_Syntax.s(1))
  e.IEnumWbemClassObject          
  If *services\ExecQuery(@"WQL", @WMIClassName, #WBEM_FLAG_RETURN_IMMEDIATELY | #WBEM_FLAG_FORWARD_ONLY, 0, @e) = #S_OK
    
    Var.VARIANT
    u.l          
    
    object.IWbemClassObject
    
    While (e\Next(#WBEM_INFINITE, 1, @object, @u) = #S_OK)
      
      For gg=0 To ArraySize(WMIclass_Syntax())
        
        CalssPro.s = WMIclass_Syntax(gg) 
        VariantInit_(@Var);            
        If object\Get(@CalssPro, 0, @Var, 0, 0) = #S_OK
          Select Var\vt
            Case #VT_I4
              Debug CalssPro + " = " + Str(Var\lVal)
            Case #VT_DISPATCH
              ;
            Case #VT_BSTR
              Debug CalssPro + " = " + PeekS(Var\bstrVal)
            Case #VT_EMPTY
              ;                  
          EndSelect
          VariantClear_(@Var); 
        EndIf
        
      Next
      
      object\Release()
    Wend
    e\Release()
  EndIf
EndProcedure

If CoInitializeEx_(0, #COINIT_MULTITHREADED) = #S_OK
  
  If CoInitializeSecurity_(0, -1, 0, 0, #RPC_C_AUTHN_LEVEL_DEFAULT, #RPC_C_IMP_LEVEL_IMPERSONATE, 0, 0, 0) = #S_OK
    
    locator.IWbemLocator
    If CoCreateInstance_(?CLSID_WbemLocator, 0, #CLSCTX_INPROC_SERVER, ?IID_IWbemLocator, @locator) = #S_OK
      
      services.IWbemServices
      If locator\ConnectServer(@"ROOT\CIMV2", 0, 0, 0, 0, 0, 0, @services) = #S_OK
        
        CoSetProxyBlanket_(services, #RPC_C_AUTHN_WINNT, #RPC_C_AUTHZ_NONE, 0, #RPC_C_AUTHN_LEVEL_CALL, #RPC_C_IMP_LEVEL_IMPERSONATE, 0, #EOAC_NONE);
        
        ForEach WMI_Class_List()
          WMIClass.s = "SELECT * FROM " + WMI_Class_List()\Class_Name
          Debug "============> WMI Class Name : " + WMI_Class_List()\Class_Name + "=============================================================="
          WMIGetProperties(services, WMIClass, WMI_Class_List()\class_Syntax())
          Debug "========================================================================================" + #CRLF$ + #CRLF$
        Next
        
        services\Release()
      EndIf
      locator\Release()
    EndIf
  EndIf
  CoUninitialize_();
EndIf 

Re: Obtenir des informations sur processeur avec "WMI"

Publié : jeu. 10/nov./2016 11:59
par Kwai chang caine
Et ben ....y'a que le nom de ma femme qu'il donne pas ton code :lol:
Merci pour ce nouveau partage 8)

Re: Obtenir des informations sur processeur avec "WMI"

Publié : jeu. 10/nov./2016 16:17
par Micoute
Moi, il donne le nom de la mienne : "services".

Re: Obtenir des informations sur processeur avec "WMI"

Publié : ven. 11/nov./2016 13:27
par nico
@celtic88,

Super, merci.

Re: Obtenir des informations sur processeur avec "WMI"

Publié : lun. 14/nov./2016 11:26
par Kwai chang caine
Alors là...c'est plus fort que midable...j'en arrive à désespérer de la vie :cry:

Non seulement j'arrive plus à installer un logiciel en setup comme tout le monde :oops:
Mais cette fois, j'arrive même plus à écrire une variable dans un fichier :?
C'est la première fois que ça m'arrive en 10 ans

Un truc de ouf, si j'essaie d’écrire la variable "PhraseInfo$" dans un simple fichier, ou même juste ouvrir un fichier, et bien le code de Celtic88 ne va même plus lire les infos en debug et bien sûr le contenu du fichier est vide 8O
J'ai rien touché au code de CELTIC, si ce n'est remplacer les debug pour qu'ils se concatènent dans la variable "PhraseInfo$"

J'ai essayé en multithread, d'ecrire en ASCII et rien n'y fait :|

Code : Tout sélectionner

; http://www.purebasic.fr/french/viewtopic.php?p=188025#p188025

;Coder celtic88 2016(c)

DataSection
 CLSID_WbemLocator:
 Data.l  $4590F811
 Data.w  $1D3A
 Data.w  $11D0
 Data.b $89, $1F, $0, $AA, $0, $4B, $2E, $24
 IID_IWbemLocator:
 Data.l  $DC12A687
 Data.w  $737F
 Data.w  $11CF
 Data.b $88, $4D, $0, $AA, $0, $4B, $2E, $24
EndDataSection

#CLSCTX_INPROC_SERVER = $1
#WBEM_FLAG_RETURN_IMMEDIATELY = $10
#WBEM_FLAG_FORWARD_ONLY = $20
;#WBEM_INFINITE = $FFFFFFFF
#RPC_C_IMP_LEVEL_IMPERSONATE = 3
#RPC_C_AUTHN_LEVEL_DEFAULT = 0
#RPC_C_AUTHN_WINNT =       10
#RPC_C_AUTHZ_NONE =          0
#RPC_C_AUTHN_LEVEL_CALL=3
#EOAC_NONE = 0

Global PhraseInfo$

;https://msdn.microsoft.com/en-us/library/aa394372(v=vs.85).aspx
Dim Win32_Process_class_Syntax.s(44)
Win32_Process_class_Syntax.s(0) = "CreationClassName"
Win32_Process_class_Syntax.s(1) = "Caption"
Win32_Process_class_Syntax.s(2) = "CommandLine"
Win32_Process_class_Syntax.s(3) = "CreationDate"
Win32_Process_class_Syntax.s(4) = "CSCreationClassName"
Win32_Process_class_Syntax.s(5) = "CSName"
Win32_Process_class_Syntax.s(6) = "Description"
Win32_Process_class_Syntax.s(7) = "ExecutablePath"
Win32_Process_class_Syntax.s(8) = "ExecutionState"
Win32_Process_class_Syntax.s(9) = "Handle"
Win32_Process_class_Syntax.s(10) = "HandleCount"
Win32_Process_class_Syntax.s(11) = "InstallDate"
Win32_Process_class_Syntax.s(12) = "KernelModeTime"
Win32_Process_class_Syntax.s(13) = "MaximumWorkingSetSize"
Win32_Process_class_Syntax.s(14) = "MinimumWorkingSetSize"
Win32_Process_class_Syntax.s(15) = "Name"
Win32_Process_class_Syntax.s(16) = "OSCreationClassName"
Win32_Process_class_Syntax.s(17) = "OSName"
Win32_Process_class_Syntax.s(18) = "OtherOperationCount"
Win32_Process_class_Syntax.s(19) = "OtherTransferCount"
Win32_Process_class_Syntax.s(20) = "PageFaults"
Win32_Process_class_Syntax.s(21) = "PageFileUsage"
Win32_Process_class_Syntax.s(22) = "ParentProcessId"
Win32_Process_class_Syntax.s(23) = "PeakPageFileUsage"
Win32_Process_class_Syntax.s(24) = "PeakVirtualSize"
Win32_Process_class_Syntax.s(25) = "PeakWorkingSetSize"
Win32_Process_class_Syntax.s(26) = "Priority = NULL"
Win32_Process_class_Syntax.s(27) = "PrivatePageCount"
Win32_Process_class_Syntax.s(28) = "ProcessId"
Win32_Process_class_Syntax.s(29) = "QuotaNonPagedPoolUsage"
Win32_Process_class_Syntax.s(30) = "QuotaPagedPoolUsage"
Win32_Process_class_Syntax.s(31) = "QuotaPeakNonPagedPoolUsage"
Win32_Process_class_Syntax.s(32) = "QuotaPeakPagedPoolUsage"
Win32_Process_class_Syntax.s(33) = "ReadOperationCount"
Win32_Process_class_Syntax.s(34) = "ReadTransferCount"
Win32_Process_class_Syntax.s(35) = "SessionId"
Win32_Process_class_Syntax.s(36) = "Status"
Win32_Process_class_Syntax.s(37) = "TerminationDate"
Win32_Process_class_Syntax.s(38) = "ThreadCount"
Win32_Process_class_Syntax.s(39) = "UserModeTime"
Win32_Process_class_Syntax.s(40) = "VirtualSize"
Win32_Process_class_Syntax.s(41) = "WindowsVersion"
Win32_Process_class_Syntax.s(42) = "WorkingSetSize"
Win32_Process_class_Syntax.s(43) = "WriteOperationCount"
Win32_Process_class_Syntax.s(44) = "WriteTransferCount"

;https://msdn.microsoft.com/en-us/library/aa394463(v=vs.85).aspx
Dim Win32_SoundDevice_class_Syntax.s(22)
Win32_SoundDevice_class_Syntax.s(0) = "Availability"
Win32_SoundDevice_class_Syntax.s(1) = "Caption"
Win32_SoundDevice_class_Syntax.s(2) = "ConfigManagerErrorCode"
Win32_SoundDevice_class_Syntax.s(3) = "ConfigManagerUserConfig"
Win32_SoundDevice_class_Syntax.s(4) = "CreationClassName"
Win32_SoundDevice_class_Syntax.s(5) = "Description"
Win32_SoundDevice_class_Syntax.s(6) = "DeviceID"
Win32_SoundDevice_class_Syntax.s(7) = "DMABufferSize"
Win32_SoundDevice_class_Syntax.s(8) = "ErrorCleared"
Win32_SoundDevice_class_Syntax.s(9) = "ErrorDescription"
Win32_SoundDevice_class_Syntax.s(10) = "InstallDate"
Win32_SoundDevice_class_Syntax.s(11) = "LastErrorCode"
Win32_SoundDevice_class_Syntax.s(12) = "Manufacturer"
Win32_SoundDevice_class_Syntax.s(13) = "MPU401Address"
Win32_SoundDevice_class_Syntax.s(14) = "Name"
Win32_SoundDevice_class_Syntax.s(15) = "PNPDeviceID"
Win32_SoundDevice_class_Syntax.s(16) = "PowerManagementCapabilities[]"
Win32_SoundDevice_class_Syntax.s(17) = "PowerManagementSupported"
Win32_SoundDevice_class_Syntax.s(18) = "ProductName"
Win32_SoundDevice_class_Syntax.s(19) = "Status"
Win32_SoundDevice_class_Syntax.s(20) = "StatusInfo"
Win32_SoundDevice_class_Syntax.s(21) = "SystemCreationClassName"
Win32_SoundDevice_class_Syntax.s(22) = "SystemName"

;https://msdn.microsoft.com/en-us/library/aa394074(v=vs.85).aspx
Dim Win32_Battery_class_Syntax.s(32)
Win32_Battery_class_Syntax.s(0) = "Availability"
Win32_Battery_class_Syntax.s(1) = "BatteryRechargeTime"
Win32_Battery_class_Syntax.s(2) = "BatteryStatus"
Win32_Battery_class_Syntax.s(3) = "Caption"
Win32_Battery_class_Syntax.s(4) = "Chemistry"
Win32_Battery_class_Syntax.s(5) = "ConfigManagerErrorCode"
Win32_Battery_class_Syntax.s(6) = "ConfigManagerUserConfig"
Win32_Battery_class_Syntax.s(7) = "CreationClassName"
Win32_Battery_class_Syntax.s(8) = "Description"
Win32_Battery_class_Syntax.s(9) = "DesignCapacity"
Win32_Battery_class_Syntax.s(10) = "DesignVoltage"
Win32_Battery_class_Syntax.s(11) = "DeviceID"
Win32_Battery_class_Syntax.s(12) = "ErrorCleared"
Win32_Battery_class_Syntax.s(13) = "ErrorDescription"
Win32_Battery_class_Syntax.s(14) = "EstimatedChargeRemaining"
Win32_Battery_class_Syntax.s(15) = "EstimatedRunTime"
Win32_Battery_class_Syntax.s(16) = "ExpectedBatteryLife"
Win32_Battery_class_Syntax.s(17) = "ExpectedLife"
Win32_Battery_class_Syntax.s(18) = "FullChargeCapacity"
Win32_Battery_class_Syntax.s(19) = "InstallDate"
Win32_Battery_class_Syntax.s(20) = "LastErrorCode"
Win32_Battery_class_Syntax.s(21) = "MaxRechargeTime"
Win32_Battery_class_Syntax.s(22) = "Name"
Win32_Battery_class_Syntax.s(23) = "PNPDeviceID"
Win32_Battery_class_Syntax.s(24) = "PowerManagementCapabilities[]"
Win32_Battery_class_Syntax.s(25) = "PowerManagementSupported"
Win32_Battery_class_Syntax.s(26) = "SmartBatteryVersion"
Win32_Battery_class_Syntax.s(27) = "Status"
Win32_Battery_class_Syntax.s(28) = "StatusInfo"
Win32_Battery_class_Syntax.s(29) = "SystemCreationClassName"
Win32_Battery_class_Syntax.s(30) = "SystemName"
Win32_Battery_class_Syntax.s(31) = "TimeOnBattery"
Win32_Battery_class_Syntax.s(32) = "TimeToFullCharge"

;https://msdn.microsoft.com/en-us/library/aa394077(v=vs.85).aspx
Dim Win32_BIOS_class_Syntax.s(30)
Win32_BIOS_class_Syntax.s(0) = "BiosCharacteristics[]"
Win32_BIOS_class_Syntax.s(1) = "BIOSVersion[]"
Win32_BIOS_class_Syntax.s(2) = "BuildNumber"
Win32_BIOS_class_Syntax.s(3) = "Caption"
Win32_BIOS_class_Syntax.s(4) = "CodeSet"
Win32_BIOS_class_Syntax.s(5) = "CurrentLanguage"
Win32_BIOS_class_Syntax.s(6) = "Description"
Win32_BIOS_class_Syntax.s(7) = "EmbeddedControllerMajorVersion"
Win32_BIOS_class_Syntax.s(8) = "EmbeddedControllerMinorVersion"
Win32_BIOS_class_Syntax.s(9) = "IdentificationCode"
Win32_BIOS_class_Syntax.s(10) = "InstallableLanguages"
Win32_BIOS_class_Syntax.s(11) = "InstallDate"
Win32_BIOS_class_Syntax.s(12) = "LanguageEdition"
Win32_BIOS_class_Syntax.s(13) = "ListOfLanguages[]"
Win32_BIOS_class_Syntax.s(14) = "Manufacturer"
Win32_BIOS_class_Syntax.s(15) = "Name"
Win32_BIOS_class_Syntax.s(16) = "OtherTargetOS"
Win32_BIOS_class_Syntax.s(17) = "PrimaryBIOS"
Win32_BIOS_class_Syntax.s(18) = "ReleaseDate"
Win32_BIOS_class_Syntax.s(19) = "SerialNumber"
Win32_BIOS_class_Syntax.s(20) = "SMBIOSBIOSVersion"
Win32_BIOS_class_Syntax.s(21) = "SMBIOSMajorVersion"
Win32_BIOS_class_Syntax.s(22) = "SMBIOSMinorVersion"
Win32_BIOS_class_Syntax.s(23) = "SMBIOSPresent"
Win32_BIOS_class_Syntax.s(24) = "SoftwareElementID"
Win32_BIOS_class_Syntax.s(25) = "SoftwareElementState"
Win32_BIOS_class_Syntax.s(26) = "Status"
Win32_BIOS_class_Syntax.s(27) = "SystemBiosMajorVersion"
Win32_BIOS_class_Syntax.s(28) = "SystemBiosMinorVersion"
Win32_BIOS_class_Syntax.s(29) = "TargetOperatingSystem"
Win32_BIOS_class_Syntax.s(30) = "Version"

;https://msdn.microsoft.com/en-us/library/aa394512(v=vs.85).aspx
Dim Win32_VideoController_class_Syntax.s(58)
Win32_VideoController_class_Syntax.s(0) = "AcceleratorCapabilities[]"
Win32_VideoController_class_Syntax.s(1) = "AdapterCompatibility"
Win32_VideoController_class_Syntax.s(2) = "AdapterDACType"
Win32_VideoController_class_Syntax.s(3) = "AdapterRAM"
Win32_VideoController_class_Syntax.s(4) = "Availability"
Win32_VideoController_class_Syntax.s(5) = "CapabilityDescriptions[]"
Win32_VideoController_class_Syntax.s(6) = "Caption"
Win32_VideoController_class_Syntax.s(7) = "ColorTableEntries"
Win32_VideoController_class_Syntax.s(8) = "ConfigManagerErrorCode"
Win32_VideoController_class_Syntax.s(9) = "ConfigManagerUserConfig"
Win32_VideoController_class_Syntax.s(10) = "CreationClassName"
Win32_VideoController_class_Syntax.s(11) = "CurrentBitsPerPixel"
Win32_VideoController_class_Syntax.s(12) = "CurrentHorizontalResolution"
Win32_VideoController_class_Syntax.s(13) = "CurrentNumberOfColors"
Win32_VideoController_class_Syntax.s(14) = "CurrentNumberOfColumns"
Win32_VideoController_class_Syntax.s(15) = "CurrentNumberOfRows"
Win32_VideoController_class_Syntax.s(16) = "CurrentRefreshRate"
Win32_VideoController_class_Syntax.s(17) = "CurrentScanMode"
Win32_VideoController_class_Syntax.s(18) = "CurrentVerticalResolution"
Win32_VideoController_class_Syntax.s(19) = "Description"
Win32_VideoController_class_Syntax.s(20) = "DeviceID"
Win32_VideoController_class_Syntax.s(21) = "DeviceSpecificPens"
Win32_VideoController_class_Syntax.s(22) = "DitherType"
Win32_VideoController_class_Syntax.s(23) = "DriverDate"
Win32_VideoController_class_Syntax.s(24) = "DriverVersion"
Win32_VideoController_class_Syntax.s(25) = "ErrorCleared"
Win32_VideoController_class_Syntax.s(26) = "ErrorDescription"
Win32_VideoController_class_Syntax.s(27) = "ICMIntent"
Win32_VideoController_class_Syntax.s(28) = "ICMMethod"
Win32_VideoController_class_Syntax.s(29) = "InfFilename"
Win32_VideoController_class_Syntax.s(30) = "InfSection"
Win32_VideoController_class_Syntax.s(31) = "InstallDate"
Win32_VideoController_class_Syntax.s(32) = "InstalledDisplayDrivers"
Win32_VideoController_class_Syntax.s(33) = "LastErrorCode"
Win32_VideoController_class_Syntax.s(34) = "MaxMemorySupported"
Win32_VideoController_class_Syntax.s(35) = "MaxNumberControlled"
Win32_VideoController_class_Syntax.s(36) = "MaxRefreshRate"
Win32_VideoController_class_Syntax.s(37) = "MinRefreshRate"
Win32_VideoController_class_Syntax.s(38) = "Monochrome"
Win32_VideoController_class_Syntax.s(39) = "Name"
Win32_VideoController_class_Syntax.s(40) = "NumberOfColorPlanes"
Win32_VideoController_class_Syntax.s(41) = "NumberOfVideoPages"
Win32_VideoController_class_Syntax.s(42) = "PNPDeviceID"
Win32_VideoController_class_Syntax.s(43) = "PowerManagementCapabilities[]"
Win32_VideoController_class_Syntax.s(44) = "PowerManagementSupported"
Win32_VideoController_class_Syntax.s(45) = "ProtocolSupported"
Win32_VideoController_class_Syntax.s(46) = "ReservedSystemPaletteEntries"
Win32_VideoController_class_Syntax.s(47) = "SpecificationVersion"
Win32_VideoController_class_Syntax.s(48) = "Status"
Win32_VideoController_class_Syntax.s(49) = "StatusInfo"
Win32_VideoController_class_Syntax.s(50) = "SystemCreationClassName"
Win32_VideoController_class_Syntax.s(51) = "SystemName"
Win32_VideoController_class_Syntax.s(52) = "SystemPaletteEntries"
Win32_VideoController_class_Syntax.s(53) = "TimeOfLastReset"
Win32_VideoController_class_Syntax.s(54) = "VideoArchitecture"
Win32_VideoController_class_Syntax.s(55) = "VideoMemoryType"
Win32_VideoController_class_Syntax.s(56) = "VideoMode"
Win32_VideoController_class_Syntax.s(57) = "VideoModeDescription"
Win32_VideoController_class_Syntax.s(58) = "VideoProcessor"

;https://msdn.microsoft.com/en-us/library/aa394102(v=vs.85).aspx
Dim Win32_ComputerSystem_class_Syntax.s(63)
Win32_ComputerSystem_class_Syntax.s(0) = "AdminPasswordStatus"
Win32_ComputerSystem_class_Syntax.s(1) = "AutomaticManagedPagefile"
Win32_ComputerSystem_class_Syntax.s(2) = "AutomaticResetBootOption"
Win32_ComputerSystem_class_Syntax.s(3) = "AutomaticResetCapability"
Win32_ComputerSystem_class_Syntax.s(4) = "BootOptionOnLimit"
Win32_ComputerSystem_class_Syntax.s(5) = "BootOptionOnWatchDog"
Win32_ComputerSystem_class_Syntax.s(6) = "BootROMSupported"
Win32_ComputerSystem_class_Syntax.s(7) = "BootupState"
Win32_ComputerSystem_class_Syntax.s(8) = "BootStatus[]"
Win32_ComputerSystem_class_Syntax.s(9) = "Caption"
Win32_ComputerSystem_class_Syntax.s(10) = "ChassisBootupState"
Win32_ComputerSystem_class_Syntax.s(11) = "ChassisSKUNumber"
Win32_ComputerSystem_class_Syntax.s(12) = "CreationClassName"
Win32_ComputerSystem_class_Syntax.s(13) = "CurrentTimeZone"
Win32_ComputerSystem_class_Syntax.s(14) = "DaylightInEffect"
Win32_ComputerSystem_class_Syntax.s(15) = "Description"
Win32_ComputerSystem_class_Syntax.s(16) = "DNSHostName"
Win32_ComputerSystem_class_Syntax.s(17) = "Domain"
Win32_ComputerSystem_class_Syntax.s(18) = "DomainRole"
Win32_ComputerSystem_class_Syntax.s(19) = "EnableDaylightSavingsTime"
Win32_ComputerSystem_class_Syntax.s(20) = "FrontPanelResetStatus"
Win32_ComputerSystem_class_Syntax.s(21) = "HypervisorPresent"
Win32_ComputerSystem_class_Syntax.s(22) = "InfraredSupported"
Win32_ComputerSystem_class_Syntax.s(23) = "InitialLoadInfo[]"
Win32_ComputerSystem_class_Syntax.s(24) = "InstallDate"
Win32_ComputerSystem_class_Syntax.s(25) = "KeyboardPasswordStatus"
Win32_ComputerSystem_class_Syntax.s(26) = "LastLoadInfo"
Win32_ComputerSystem_class_Syntax.s(27) = "Manufacturer"
Win32_ComputerSystem_class_Syntax.s(28) = "Model"
Win32_ComputerSystem_class_Syntax.s(29) = "Name"
Win32_ComputerSystem_class_Syntax.s(30) = "NameFormat"
Win32_ComputerSystem_class_Syntax.s(31) = "NetworkServerModeEnabled"
Win32_ComputerSystem_class_Syntax.s(32) = "NumberOfLogicalProcessors"
Win32_ComputerSystem_class_Syntax.s(33) = "NumberOfProcessors"
Win32_ComputerSystem_class_Syntax.s(34) = "OEMLogoBitmap[]"
Win32_ComputerSystem_class_Syntax.s(35) = "OEMStringArray[]"
Win32_ComputerSystem_class_Syntax.s(36) = "PartOfDomain"
Win32_ComputerSystem_class_Syntax.s(37) = "PauseAfterReset"
Win32_ComputerSystem_class_Syntax.s(38) = "PCSystemType"
Win32_ComputerSystem_class_Syntax.s(39) = "PCSystemTypeEx"
Win32_ComputerSystem_class_Syntax.s(40) = "PowerManagementCapabilities[]"
Win32_ComputerSystem_class_Syntax.s(41) = "PowerManagementSupported"
Win32_ComputerSystem_class_Syntax.s(42) = "PowerOnPasswordStatus"
Win32_ComputerSystem_class_Syntax.s(43) = "PowerState"
Win32_ComputerSystem_class_Syntax.s(44) = "PowerSupplyState"
Win32_ComputerSystem_class_Syntax.s(45) = "PrimaryOwnerContact"
Win32_ComputerSystem_class_Syntax.s(46) = "PrimaryOwnerName"
Win32_ComputerSystem_class_Syntax.s(47) = "ResetCapability"
Win32_ComputerSystem_class_Syntax.s(48) = "ResetCount"
Win32_ComputerSystem_class_Syntax.s(49) = "ResetLimit"
Win32_ComputerSystem_class_Syntax.s(50) = "Roles[]"
Win32_ComputerSystem_class_Syntax.s(51) = "Status"
Win32_ComputerSystem_class_Syntax.s(52) = "SupportContactDescription[]"
Win32_ComputerSystem_class_Syntax.s(53) = "SystemFamily"
Win32_ComputerSystem_class_Syntax.s(54) = "SystemSKUNumber"
Win32_ComputerSystem_class_Syntax.s(55) = "SystemStartupDelay"
Win32_ComputerSystem_class_Syntax.s(56) = "SystemStartupOptions[]"
Win32_ComputerSystem_class_Syntax.s(57) = "SystemStartupSetting"
Win32_ComputerSystem_class_Syntax.s(58) = "SystemType"
Win32_ComputerSystem_class_Syntax.s(59) = "ThermalState"
Win32_ComputerSystem_class_Syntax.s(60) = "TotalPhysicalMemory"
Win32_ComputerSystem_class_Syntax.s(61) = "UserName"
Win32_ComputerSystem_class_Syntax.s(62) = "WakeUpType"
Win32_ComputerSystem_class_Syntax.s(63) = "Workgroup"

;https://msdn.microsoft.com/en-us/library/aa394121(v=vs.85).aspx
Dim Win32_Desktop_class_Syntax.s(20)
Win32_Desktop_class_Syntax.s(0) = "Caption"
Win32_Desktop_class_Syntax.s(1) = "Description"
Win32_Desktop_class_Syntax.s(2) = "SettingID"
Win32_Desktop_class_Syntax.s(3) = "BorderWidth"
Win32_Desktop_class_Syntax.s(4) = "CoolSwitch"
Win32_Desktop_class_Syntax.s(5) = "CursorBlinkRate"
Win32_Desktop_class_Syntax.s(6) = "DragFullWindows"
Win32_Desktop_class_Syntax.s(7) = "GridGranularity"
Win32_Desktop_class_Syntax.s(8) = "IconSpacing"
Win32_Desktop_class_Syntax.s(9) = "IconTitleFaceName"
Win32_Desktop_class_Syntax.s(10) = "IconTitleSize"
Win32_Desktop_class_Syntax.s(11) = "IconTitleWrap"
Win32_Desktop_class_Syntax.s(12) = "Name"
Win32_Desktop_class_Syntax.s(13) = "Pattern"
Win32_Desktop_class_Syntax.s(14) = "ScreenSaverActive"
Win32_Desktop_class_Syntax.s(15) = "ScreenSaverExecutable"
Win32_Desktop_class_Syntax.s(16) = "ScreenSaverSecure"
Win32_Desktop_class_Syntax.s(17) = "ScreenSaverTimeout"
Win32_Desktop_class_Syntax.s(18) = "Wallpaper"
Win32_Desktop_class_Syntax.s(19) = "WallpaperStretched"
Win32_Desktop_class_Syntax.s(20) = "WallpaperTiled"

;https://msdn.microsoft.com/en-us/library/aa394132(v=vs.85).aspx
Dim Win32_DiskDrive_class_Syntax.s(50)
Win32_DiskDrive_class_Syntax.s(0) = "Availability"
Win32_DiskDrive_class_Syntax.s(1) = "BytesPerSector"
Win32_DiskDrive_class_Syntax.s(2) = "Capabilities[]"
Win32_DiskDrive_class_Syntax.s(3) = "CapabilityDescriptions[]"
Win32_DiskDrive_class_Syntax.s(4) = "Caption"
Win32_DiskDrive_class_Syntax.s(5) = "CompressionMethod"
Win32_DiskDrive_class_Syntax.s(6) = "ConfigManagerErrorCode"
Win32_DiskDrive_class_Syntax.s(7) = "ConfigManagerUserConfig"
Win32_DiskDrive_class_Syntax.s(8) = "CreationClassName"
Win32_DiskDrive_class_Syntax.s(9) = "DefaultBlockSize"
Win32_DiskDrive_class_Syntax.s(10) = "Description"
Win32_DiskDrive_class_Syntax.s(11) = "DeviceID"
Win32_DiskDrive_class_Syntax.s(12) = "ErrorCleared"
Win32_DiskDrive_class_Syntax.s(13) = "ErrorDescription"
Win32_DiskDrive_class_Syntax.s(14) = "ErrorMethodology"
Win32_DiskDrive_class_Syntax.s(15) = "FirmwareRevision"
Win32_DiskDrive_class_Syntax.s(16) = "Index"
Win32_DiskDrive_class_Syntax.s(17) = "InstallDate"
Win32_DiskDrive_class_Syntax.s(18) = "InterfaceType"
Win32_DiskDrive_class_Syntax.s(19) = "LastErrorCode"
Win32_DiskDrive_class_Syntax.s(20) = "Manufacturer"
Win32_DiskDrive_class_Syntax.s(21) = "MaxBlockSize"
Win32_DiskDrive_class_Syntax.s(22) = "MaxMediaSize"
Win32_DiskDrive_class_Syntax.s(23) = "MediaLoaded"
Win32_DiskDrive_class_Syntax.s(24) = "MediaType"
Win32_DiskDrive_class_Syntax.s(25) = "MinBlockSize"
Win32_DiskDrive_class_Syntax.s(26) = "Model"
Win32_DiskDrive_class_Syntax.s(27) = "Name"
Win32_DiskDrive_class_Syntax.s(28) = "NeedsCleaning"
Win32_DiskDrive_class_Syntax.s(29) = "NumberOfMediaSupported"
Win32_DiskDrive_class_Syntax.s(30) = "Partitions"
Win32_DiskDrive_class_Syntax.s(31) = "PNPDeviceID"
Win32_DiskDrive_class_Syntax.s(32) = "PowerManagementCapabilities[]"
Win32_DiskDrive_class_Syntax.s(33) = "PowerManagementSupported"
Win32_DiskDrive_class_Syntax.s(34) = "SCSIBus"
Win32_DiskDrive_class_Syntax.s(35) = "SCSILogicalUnit"
Win32_DiskDrive_class_Syntax.s(36) = "SCSIPort"
Win32_DiskDrive_class_Syntax.s(37) = "SCSITargetId"
Win32_DiskDrive_class_Syntax.s(38) = "SectorsPerTrack"
Win32_DiskDrive_class_Syntax.s(39) = "SerialNumber"
Win32_DiskDrive_class_Syntax.s(40) = "Signature"
Win32_DiskDrive_class_Syntax.s(41) = "Size"
Win32_DiskDrive_class_Syntax.s(42) = "Status"
Win32_DiskDrive_class_Syntax.s(43) = "StatusInfo"
Win32_DiskDrive_class_Syntax.s(44) = "SystemCreationClassName"
Win32_DiskDrive_class_Syntax.s(45) = "SystemName"
Win32_DiskDrive_class_Syntax.s(46) = "TotalCylinders"
Win32_DiskDrive_class_Syntax.s(47) = "TotalHeads"
Win32_DiskDrive_class_Syntax.s(48) = "TotalSectors"
Win32_DiskDrive_class_Syntax.s(49) = "TotalTracks"
Win32_DiskDrive_class_Syntax.s(50) = "TracksPerCylinder"

;https://msdn.microsoft.com/en-us/library/aa394166(v=vs.85).aspx
Dim Win32_Keyboard_class_Syntax.s(22)
Win32_Keyboard_class_Syntax.s(0) = "Availability"
Win32_Keyboard_class_Syntax.s(1) = "Caption"
Win32_Keyboard_class_Syntax.s(2) = "ConfigManagerErrorCode"
Win32_Keyboard_class_Syntax.s(3) = "ConfigManagerUserConfig"
Win32_Keyboard_class_Syntax.s(4) = "CreationClassName"
Win32_Keyboard_class_Syntax.s(5) = "Description"
Win32_Keyboard_class_Syntax.s(6) = "DeviceID"
Win32_Keyboard_class_Syntax.s(7) = "ErrorCleared"
Win32_Keyboard_class_Syntax.s(8) = "ErrorDescription"
Win32_Keyboard_class_Syntax.s(9) = "InstallDate"
Win32_Keyboard_class_Syntax.s(10) = "IsLocked"
Win32_Keyboard_class_Syntax.s(11) = "LastErrorCode"
Win32_Keyboard_class_Syntax.s(12) = "Layout"
Win32_Keyboard_class_Syntax.s(13) = "Name"
Win32_Keyboard_class_Syntax.s(14) = "NumberOfFunctionKeys"
Win32_Keyboard_class_Syntax.s(15) = "Password"
Win32_Keyboard_class_Syntax.s(16) = "PNPDeviceID"
Win32_Keyboard_class_Syntax.s(17) = "PowerManagementCapabilities[]"
Win32_Keyboard_class_Syntax.s(18) = "PowerManagementSupported"
Win32_Keyboard_class_Syntax.s(19) = "Status"
Win32_Keyboard_class_Syntax.s(20) = "StatusInfo"
Win32_Keyboard_class_Syntax.s(21) = "SystemCreationClassName"
Win32_Keyboard_class_Syntax.s(22) = "SystemName"

;https://msdn.microsoft.com/en-us/library/aa394347(v=vs.85).aspx
Dim Win32_PhysicalMemory_class_Syntax.s(35)
Win32_PhysicalMemory_class_Syntax.s(0) = "Attributes"
Win32_PhysicalMemory_class_Syntax.s(1) = "BankLabel"
Win32_PhysicalMemory_class_Syntax.s(2) = "Capacity"
Win32_PhysicalMemory_class_Syntax.s(3) = "Caption"
Win32_PhysicalMemory_class_Syntax.s(4) = "ConfiguredClockSpeed"
Win32_PhysicalMemory_class_Syntax.s(5) = "ConfiguredVoltage"
Win32_PhysicalMemory_class_Syntax.s(6) = "CreationClassName"
Win32_PhysicalMemory_class_Syntax.s(7) = "DataWidth"
Win32_PhysicalMemory_class_Syntax.s(8) = "Description"
Win32_PhysicalMemory_class_Syntax.s(9) = "DeviceLocator"
Win32_PhysicalMemory_class_Syntax.s(10) = "FormFactor"
Win32_PhysicalMemory_class_Syntax.s(11) = "HotSwappable"
Win32_PhysicalMemory_class_Syntax.s(12) = "InstallDate"
Win32_PhysicalMemory_class_Syntax.s(13) = "InterleaveDataDepth"
Win32_PhysicalMemory_class_Syntax.s(14) = "InterleavePosition"
Win32_PhysicalMemory_class_Syntax.s(15) = "Manufacturer"
Win32_PhysicalMemory_class_Syntax.s(16) = "MaxVoltage"
Win32_PhysicalMemory_class_Syntax.s(17) = "MemoryType"
Win32_PhysicalMemory_class_Syntax.s(18) = "MinVoltage"
Win32_PhysicalMemory_class_Syntax.s(19) = "Model"
Win32_PhysicalMemory_class_Syntax.s(20) = "Name"
Win32_PhysicalMemory_class_Syntax.s(21) = "OtherIdentifyingInfo"
Win32_PhysicalMemory_class_Syntax.s(22) = "PartNumber"
Win32_PhysicalMemory_class_Syntax.s(23) = "PositionInRow"
Win32_PhysicalMemory_class_Syntax.s(24) = "PoweredOn"
Win32_PhysicalMemory_class_Syntax.s(25) = "Removable"
Win32_PhysicalMemory_class_Syntax.s(26) = "Replaceable"
Win32_PhysicalMemory_class_Syntax.s(27) = "SerialNumber"
Win32_PhysicalMemory_class_Syntax.s(28) = "SKU"
Win32_PhysicalMemory_class_Syntax.s(29) = "SMBIOSMemoryType"
Win32_PhysicalMemory_class_Syntax.s(30) = "Speed"
Win32_PhysicalMemory_class_Syntax.s(31) = "Status"
Win32_PhysicalMemory_class_Syntax.s(32) = "Tag"
Win32_PhysicalMemory_class_Syntax.s(33) = "TotalWidth"
Win32_PhysicalMemory_class_Syntax.s(34) = "TypeDetail"
Win32_PhysicalMemory_class_Syntax.s(35) = "Version"

;https://msdn.microsoft.com/en-us/library/aa394122(v=vs.85).aspx
Dim Win32_DesktopMonitor_class_Syntax.s(27)
Win32_DesktopMonitor_class_Syntax(0)  = "Availability"
Win32_DesktopMonitor_class_Syntax(1)  = "Bandwidth"
Win32_DesktopMonitor_class_Syntax(2)  = "Caption"
Win32_DesktopMonitor_class_Syntax(3)  = "ConfigManagerErrorCode"
Win32_DesktopMonitor_class_Syntax(4)  = "ConfigManagerUserConfig"
Win32_DesktopMonitor_class_Syntax(5)  = "CreationClassName"
Win32_DesktopMonitor_class_Syntax(6)  = "Description"
Win32_DesktopMonitor_class_Syntax(7)  = "DeviceID"
Win32_DesktopMonitor_class_Syntax(8)  = "DisplayType"
Win32_DesktopMonitor_class_Syntax(9)  = "ErrorCleared"
Win32_DesktopMonitor_class_Syntax(10)  = "ErrorDescription"
Win32_DesktopMonitor_class_Syntax(11)  = "InstallDate"
Win32_DesktopMonitor_class_Syntax(12)  = "IsLocked"
Win32_DesktopMonitor_class_Syntax(13)  = "LastErrorCode"
Win32_DesktopMonitor_class_Syntax(14)  = "MonitorManufacturer"
Win32_DesktopMonitor_class_Syntax(15)  = "MonitorType"
Win32_DesktopMonitor_class_Syntax(16)  = "Name"
Win32_DesktopMonitor_class_Syntax(17)  = "PixelsPerXLogicalInch"
Win32_DesktopMonitor_class_Syntax(18)  = "PixelsPerYLogicalInch"
Win32_DesktopMonitor_class_Syntax(19)  = "PNPDeviceID"
Win32_DesktopMonitor_class_Syntax(20)  = "PowerManagementCapabilities[]"
Win32_DesktopMonitor_class_Syntax(21)  = "PowerManagementSupported"
Win32_DesktopMonitor_class_Syntax(22)  = "ScreenHeight"
Win32_DesktopMonitor_class_Syntax(23)  = "ScreenWidth"
Win32_DesktopMonitor_class_Syntax(24)  = "Status"
Win32_DesktopMonitor_class_Syntax(25)  = "StatusInfo"
Win32_DesktopMonitor_class_Syntax(26)  = "SystemCreationClassName"
Win32_DesktopMonitor_class_Syntax(27)  = "SystemName"

;https://msdn.microsoft.com/en-us/library/aa394204(v=vs.85).aspx
Dim Win32_MotherboardDevice_class_Syntax.s(21)
Win32_MotherboardDevice_class_Syntax.s(0) = "Availability"
Win32_MotherboardDevice_class_Syntax.s(1) = "Caption"
Win32_MotherboardDevice_class_Syntax.s(2) = "ConfigManagerErrorCode"
Win32_MotherboardDevice_class_Syntax.s(3) = "ConfigManagerUserConfig"
Win32_MotherboardDevice_class_Syntax.s(4) = "CreationClassName"
Win32_MotherboardDevice_class_Syntax.s(5) = "Description"
Win32_MotherboardDevice_class_Syntax.s(6) = "DeviceID"
Win32_MotherboardDevice_class_Syntax.s(7) = "ErrorCleared"
Win32_MotherboardDevice_class_Syntax.s(8) = "ErrorDescription"
Win32_MotherboardDevice_class_Syntax.s(9) = "InstallDate"
Win32_MotherboardDevice_class_Syntax.s(10) = "LastErrorCode"
Win32_MotherboardDevice_class_Syntax.s(11) = "Name"
Win32_MotherboardDevice_class_Syntax.s(12) = "PNPDeviceID"
Win32_MotherboardDevice_class_Syntax.s(13) = "PowerManagementCapabilities[]"
Win32_MotherboardDevice_class_Syntax.s(14) = "PowerManagementSupported"
Win32_MotherboardDevice_class_Syntax.s(15) = "PrimaryBusType"
Win32_MotherboardDevice_class_Syntax.s(16) = "RevisionNumber"
Win32_MotherboardDevice_class_Syntax.s(17) = "SecondaryBusType"
Win32_MotherboardDevice_class_Syntax.s(18) = "Status"
Win32_MotherboardDevice_class_Syntax.s(19) = "StatusInfo"
Win32_MotherboardDevice_class_Syntax.s(20) = "SystemCreationClassName"
Win32_MotherboardDevice_class_Syntax.s(21) = "SystemName"

;https://msdn.microsoft.com/en-us/library/aa394356(v=vs.85).aspx
Dim Win32_PointingDevice_class_Syntax.s(32)
Win32_PointingDevice_class_Syntax.s(0) = "Availability"
Win32_PointingDevice_class_Syntax.s(1) = "Caption"
Win32_PointingDevice_class_Syntax.s(2) = "ConfigManagerErrorCode"
Win32_PointingDevice_class_Syntax.s(3) = "ConfigManagerUserConfig"
Win32_PointingDevice_class_Syntax.s(4) = "CreationClassName"
Win32_PointingDevice_class_Syntax.s(5) = "Description"
Win32_PointingDevice_class_Syntax.s(6) = "DeviceID"
Win32_PointingDevice_class_Syntax.s(7) = "DeviceInterface"
Win32_PointingDevice_class_Syntax.s(8) = "DoubleSpeedThreshold"
Win32_PointingDevice_class_Syntax.s(9) = "ErrorCleared"
Win32_PointingDevice_class_Syntax.s(10) = "ErrorDescription"
Win32_PointingDevice_class_Syntax.s(11) = "Handedness"
Win32_PointingDevice_class_Syntax.s(12) = "HardwareType"
Win32_PointingDevice_class_Syntax.s(13) = "InfFileName"
Win32_PointingDevice_class_Syntax.s(14) = "InfSection"
Win32_PointingDevice_class_Syntax.s(15) = "InstallDate"
Win32_PointingDevice_class_Syntax.s(16) = "IsLocked"
Win32_PointingDevice_class_Syntax.s(17) = "LastErrorCode"
Win32_PointingDevice_class_Syntax.s(18) = "Manufacturer"
Win32_PointingDevice_class_Syntax.s(19) = "Name"
Win32_PointingDevice_class_Syntax.s(20) = "NumberOfButtons"
Win32_PointingDevice_class_Syntax.s(21) = "PNPDeviceID"
Win32_PointingDevice_class_Syntax.s(22) = "PointingType"
Win32_PointingDevice_class_Syntax.s(23) = "PowerManagementCapabilities[]"
Win32_PointingDevice_class_Syntax.s(24) = "PowerManagementSupported"
Win32_PointingDevice_class_Syntax.s(25) = "QuadSpeedThreshold"
Win32_PointingDevice_class_Syntax.s(26) = "Resolution"
Win32_PointingDevice_class_Syntax.s(27) = "SampleRate"
Win32_PointingDevice_class_Syntax.s(28) = "Status"
Win32_PointingDevice_class_Syntax.s(29) = "StatusInfo"
Win32_PointingDevice_class_Syntax.s(30) = "Synch"
Win32_PointingDevice_class_Syntax.s(31) = "SystemCreationClassName"
Win32_PointingDevice_class_Syntax.s(32) = "SystemName"

;https://msdn.microsoft.com/en-us/library/aa394216(v=vs.85).aspx
Dim Win32_NetworkAdapter_class_Syntax.s(39)
Win32_NetworkAdapter_class_Syntax.s(0) = "AdapterType"
Win32_NetworkAdapter_class_Syntax.s(1) = "AdapterTypeID"
Win32_NetworkAdapter_class_Syntax.s(2) = "AutoSense"
Win32_NetworkAdapter_class_Syntax.s(3) = "Availability"
Win32_NetworkAdapter_class_Syntax.s(4) = "Caption"
Win32_NetworkAdapter_class_Syntax.s(5) = "ConfigManagerErrorCode"
Win32_NetworkAdapter_class_Syntax.s(6) = "ConfigManagerUserConfig"
Win32_NetworkAdapter_class_Syntax.s(7) = "CreationClassName"
Win32_NetworkAdapter_class_Syntax.s(8) = "Description"
Win32_NetworkAdapter_class_Syntax.s(9) = "DeviceID"
Win32_NetworkAdapter_class_Syntax.s(10) = "ErrorCleared"
Win32_NetworkAdapter_class_Syntax.s(11) = "ErrorDescription"
Win32_NetworkAdapter_class_Syntax.s(12) = "GUID"
Win32_NetworkAdapter_class_Syntax.s(13) = "Index"
Win32_NetworkAdapter_class_Syntax.s(14) = "InstallDate"
Win32_NetworkAdapter_class_Syntax.s(15) = "Installed"
Win32_NetworkAdapter_class_Syntax.s(16) = "InterfaceIndex"
Win32_NetworkAdapter_class_Syntax.s(17) = "LastErrorCode"
Win32_NetworkAdapter_class_Syntax.s(18) = "MACAddress"
Win32_NetworkAdapter_class_Syntax.s(19) = "Manufacturer"
Win32_NetworkAdapter_class_Syntax.s(20) = "MaxNumberControlled"
Win32_NetworkAdapter_class_Syntax.s(21) = "MaxSpeed"
Win32_NetworkAdapter_class_Syntax.s(22) = "Name"
Win32_NetworkAdapter_class_Syntax.s(23) = "NetConnectionID"
Win32_NetworkAdapter_class_Syntax.s(24) = "NetConnectionStatus"
Win32_NetworkAdapter_class_Syntax.s(25) = "NetEnabled"
Win32_NetworkAdapter_class_Syntax.s(26) = "NetworkAddresses[]"
Win32_NetworkAdapter_class_Syntax.s(27) = "PermanentAddress"
Win32_NetworkAdapter_class_Syntax.s(28) = "PhysicalAdapter"
Win32_NetworkAdapter_class_Syntax.s(29) = "PNPDeviceID"
Win32_NetworkAdapter_class_Syntax.s(30) = "PowerManagementCapabilities[]"
Win32_NetworkAdapter_class_Syntax.s(31) = "PowerManagementSupported"
Win32_NetworkAdapter_class_Syntax.s(32) = "ProductName"
Win32_NetworkAdapter_class_Syntax.s(33) = "ServiceName"
Win32_NetworkAdapter_class_Syntax.s(34) = "Speed"
Win32_NetworkAdapter_class_Syntax.s(35) = "Status"
Win32_NetworkAdapter_class_Syntax.s(36) = "StatusInfo"
Win32_NetworkAdapter_class_Syntax.s(37) = "SystemCreationClassName"
Win32_NetworkAdapter_class_Syntax.s(38) = "SystemName"
Win32_NetworkAdapter_class_Syntax.s(39) = "TimeOfLastReset"

;https://msdn.microsoft.com/en-us/library/aa394239(v=vs.85).aspx
Dim Win32_OperatingSystem_class_Syntax.s(65)
Win32_OperatingSystem_class_Syntax.s(0) = "BootDevice"
Win32_OperatingSystem_class_Syntax.s(1) = "BuildNumber"
Win32_OperatingSystem_class_Syntax.s(2) = "BuildType"
Win32_OperatingSystem_class_Syntax.s(3) = "Caption"
Win32_OperatingSystem_class_Syntax.s(4) = "CodeSet"
Win32_OperatingSystem_class_Syntax.s(5) = "CountryCode"
Win32_OperatingSystem_class_Syntax.s(6) = "CreationClassName"
Win32_OperatingSystem_class_Syntax.s(7) = "CSCreationClassName"
Win32_OperatingSystem_class_Syntax.s(8) = "CSDVersion"
Win32_OperatingSystem_class_Syntax.s(9) = "CSName"
Win32_OperatingSystem_class_Syntax.s(10) = "CurrentTimeZone"
Win32_OperatingSystem_class_Syntax.s(11) = "DataExecutionPrevention_Available"
Win32_OperatingSystem_class_Syntax.s(12) = "DataExecutionPrevention_32BitApplications"
Win32_OperatingSystem_class_Syntax.s(13) = "DataExecutionPrevention_Drivers"
Win32_OperatingSystem_class_Syntax.s(14) = "DataExecutionPrevention_SupportPolicy"
Win32_OperatingSystem_class_Syntax.s(15) = "Debug"
Win32_OperatingSystem_class_Syntax.s(16) = "Description"
Win32_OperatingSystem_class_Syntax.s(17) = "Distributed"
Win32_OperatingSystem_class_Syntax.s(18) = "EncryptionLevel"
Win32_OperatingSystem_class_Syntax.s(19) = "ForegroundApplicationBoost = 2"
Win32_OperatingSystem_class_Syntax.s(20) = "FreePhysicalMemory"
Win32_OperatingSystem_class_Syntax.s(21) = "FreeSpaceInPagingFiles"
Win32_OperatingSystem_class_Syntax.s(22) = "FreeVirtualMemory"
Win32_OperatingSystem_class_Syntax.s(23) = "InstallDate"
Win32_OperatingSystem_class_Syntax.s(24) = "LargeSystemCache"
Win32_OperatingSystem_class_Syntax.s(25) = "LastBootUpTime"
Win32_OperatingSystem_class_Syntax.s(26) = "LocalDateTime"
Win32_OperatingSystem_class_Syntax.s(27) = "Locale"
Win32_OperatingSystem_class_Syntax.s(28) = "Manufacturer"
Win32_OperatingSystem_class_Syntax.s(29) = "MaxNumberOfProcesses"
Win32_OperatingSystem_class_Syntax.s(30) = "MaxProcessMemorySize"
Win32_OperatingSystem_class_Syntax.s(31) = "MUILanguages[]"
Win32_OperatingSystem_class_Syntax.s(32) = "Name"
Win32_OperatingSystem_class_Syntax.s(33) = "NumberOfLicensedUsers"
Win32_OperatingSystem_class_Syntax.s(34) = "NumberOfProcesses"
Win32_OperatingSystem_class_Syntax.s(35) = "NumberOfUsers"
Win32_OperatingSystem_class_Syntax.s(36) = "OperatingSystemSKU"
Win32_OperatingSystem_class_Syntax.s(37) = "Organization"
Win32_OperatingSystem_class_Syntax.s(38) = "OSArchitecture"
Win32_OperatingSystem_class_Syntax.s(39) = "OSLanguage"
Win32_OperatingSystem_class_Syntax.s(40) = "OSProductSuite"
Win32_OperatingSystem_class_Syntax.s(41) = "OSType"
Win32_OperatingSystem_class_Syntax.s(42) = "OtherTypeDescription"
Win32_OperatingSystem_class_Syntax.s(43) = "PAEEnabled"
Win32_OperatingSystem_class_Syntax.s(44) = "PlusProductID"
Win32_OperatingSystem_class_Syntax.s(45) = "PlusVersionNumber"
Win32_OperatingSystem_class_Syntax.s(46) = "PortableOperatingSystem"
Win32_OperatingSystem_class_Syntax.s(47) = "Primary"
Win32_OperatingSystem_class_Syntax.s(48) = "ProductType"
Win32_OperatingSystem_class_Syntax.s(49) = "RegisteredUser"
Win32_OperatingSystem_class_Syntax.s(50) = "SerialNumber"
Win32_OperatingSystem_class_Syntax.s(51) = "ServicePackMajorVersion"
Win32_OperatingSystem_class_Syntax.s(52) = "ServicePackMinorVersion"
Win32_OperatingSystem_class_Syntax.s(53) = "SizeStoredInPagingFiles"
Win32_OperatingSystem_class_Syntax.s(54) = "Status"
Win32_OperatingSystem_class_Syntax.s(55) = "SuiteMask"
Win32_OperatingSystem_class_Syntax.s(56) = "SystemDevice"
Win32_OperatingSystem_class_Syntax.s(57) = "SystemDirectory"
Win32_OperatingSystem_class_Syntax.s(58) = "SystemDrive"
Win32_OperatingSystem_class_Syntax.s(59) = "TotalSwapSpaceSize"
Win32_OperatingSystem_class_Syntax.s(60) = "TotalVirtualMemorySize"
Win32_OperatingSystem_class_Syntax.s(61) = "TotalVisibleMemorySize"
Win32_OperatingSystem_class_Syntax.s(62) = "Version"
Win32_OperatingSystem_class_Syntax.s(63) = "WindowsDirectory"
Win32_OperatingSystem_class_Syntax.s(64) = "QuantumLength"
Win32_OperatingSystem_class_Syntax.s(65) = "QuantumType"

Structure sWMI_Class_List
 Class_Name.s
 Array class_Syntax.s(0)
EndStructure

NewList WMI_Class_List.sWMI_Class_List()

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_Process"
CopyArray(Win32_Process_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_SoundDevice"
CopyArray(Win32_SoundDevice_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_Battery"
CopyArray(Win32_Battery_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_BIOS"
CopyArray(Win32_BIOS_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_VideoController"
CopyArray(Win32_VideoController_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_ComputerSystem"
CopyArray(Win32_ComputerSystem_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_Desktop"
CopyArray(Win32_Desktop_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_DiskDrive"
CopyArray(Win32_DiskDrive_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_Keyboard"
CopyArray(Win32_Keyboard_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_PhysicalMemory"
CopyArray(Win32_PhysicalMemory_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_DesktopMonitor"
CopyArray(Win32_DesktopMonitor_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_MotherboardDevice"
CopyArray(Win32_MotherboardDevice_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_PointingDevice"
CopyArray(Win32_PointingDevice_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_NetworkAdapter"
CopyArray(Win32_NetworkAdapter_class_Syntax(),WMI_Class_List()\class_Syntax())

AddElement(WMI_Class_List())
WMI_Class_List()\Class_Name = "Win32_OperatingSystem"
CopyArray(Win32_OperatingSystem_class_Syntax(),WMI_Class_List()\class_Syntax())

Procedure.b WMIGetProperties(*services.IWbemServices,WMIClassName.s,Array WMIclass_Syntax.s(1))
 
 e.IEnumWbemClassObject          
 
 If *services\ExecQuery(@"WQL", @WMIClassName, #WBEM_FLAG_RETURN_IMMEDIATELY | #WBEM_FLAG_FORWARD_ONLY, 0, @e) = #S_OK
  
  Var.VARIANT
  u.l          
  object.IWbemClassObject
  
  While (e\Next(#WBEM_INFINITE, 1, @object, @u) = #S_OK)
   
   For gg=0 To ArraySize(WMIclass_Syntax())
    
    CalssPro.s = WMIclass_Syntax(gg) 
    VariantInit_(@Var)
            
    If object\Get(@CalssPro, 0, @Var, 0, 0) = #S_OK
 
     Select Var\vt
     
      Case #VT_I4
     
       PhraseInfo$ + CalssPro + " = " + Str(Var\lVal) + #CRLF$
     
      Case #VT_DISPATCH
       ;
      Case #VT_BSTR
     
       PhraseInfo$ + CalssPro + " = " + PeekS(Var\bstrVal) + #CRLF$
     
      Case #VT_EMPTY
       ;                  
     EndSelect
     
     VariantClear_(@Var)
     
    EndIf
    
   Next
   
   object\Release()
 
  Wend
 
  e\Release()
  
 EndIf
 
EndProcedure

If CoInitializeEx_(0, #COINIT_MULTITHREADED) = #S_OK
 
 If CoInitializeSecurity_(0, -1, 0, 0, #RPC_C_AUTHN_LEVEL_DEFAULT, #RPC_C_IMP_LEVEL_IMPERSONATE, 0, 0, 0) = #S_OK
  
  locator.IWbemLocator
  
  If CoCreateInstance_(?CLSID_WbemLocator, 0, #CLSCTX_INPROC_SERVER, ?IID_IWbemLocator, @locator) = #S_OK
   
   services.IWbemServices
   
   If locator\ConnectServer(@"ROOT\CIMV2", 0, 0, 0, 0, 0, 0, @services) = #S_OK
    
    CoSetProxyBlanket_(services, #RPC_C_AUTHN_WINNT, #RPC_C_AUTHZ_NONE, 0, #RPC_C_AUTHN_LEVEL_CALL, #RPC_C_IMP_LEVEL_IMPERSONATE, 0, #EOAC_NONE);
        
    ForEach WMI_Class_List()
    
     WMIClass.s = "SELECT * FROM " + WMI_Class_List()\Class_Name
     PhraseInfo$ + "============> WMI Class Name : " + WMI_Class_List()\Class_Name + "==============================================================" + #CRLF$
     WMIGetProperties(services, WMIClass, WMI_Class_List()\class_Syntax())
     PhraseInfo$ + "========================================================================================" + #CRLF$
    
    Next
    
    services\Release()
    
   EndIf
   
   locator\Release()
   
  EndIf
  
 EndIf
 
 CoUninitialize_()
 
EndIf

Debug PhraseInfo$

; Canal = OpenFile(#PB_Any, "c:\Temp\InfosWmiPC.txt", #PB_Ascii)
;  
; If Canal
; 
;  WriteString(Canal, PhraseInfo$, #PB_Ascii)
;  CloseFile(Canal)
;   
; Else
; 
;  MessageRequester("", "Impossible de créer le fichier informations") 
;  
; EndIf

Re: Obtenir des informations sur processeur avec "WMI"

Publié : lun. 14/nov./2016 12:34
par Ar-S
J'avoue que c'est vraiment étrange, même en mettant l'openfile et le wintresting dans la procédure, nib...
Du moment ou l'on appel OpenFile le listing devient muet.
Y'a une couille dans l'gigot.

Re: Obtenir des informations sur processeur avec "WMI"

Publié : lun. 14/nov./2016 12:41
par celtic88
@Kwai chang caine
assure toi que t'ouvre le programme en mode Unicode et admin

pc, le code marche bien chez moi!

Re: Obtenir des informations sur processeur avec "WMI"

Publié : lun. 14/nov./2016 12:45
par celtic88
et si c'était une erreur il me faut plus de detail sur quel appele api sa bug et le code d erreur!!

Re: Obtenir des informations sur processeur avec "WMI"

Publié : lun. 14/nov./2016 13:02
par Kwai chang caine
Ah bon, merci ars, le sang revient dans mon corps 8)

@Celtic88
Je suis en unicode, puisque je suis en v5.50 :wink:
Et je suis admin, car ton code marche...mais j'ai pas le droit d'enregistrer les informations. ..c'est top secret :lol:

Et le plus drôle c'est que j'ai pas de code d'erreur.

En fait, des qu'on ouvre un fichier, que ce soit avant après, et bien on ne passe plus par aucun des debugs.

A croire que l'ouverture des fichiers bloque l'exécution du wmi
Truc de dingue... 8O

Re: Obtenir des informations sur processeur avec "WMI"

Publié : lun. 14/nov./2016 13:14
par Kwai chang caine
Bon...je suis a nouveau devant un PC

Alors si on ouvre un fichier et qu'on rajoute

Code : Tout sélectionner

Debug CoInitializeEx_(0, #COINIT_MULTITHREADED)
Debug "#S_OK = " + #S_OK 
On obtient avec ouverture fichier
-2147417850
#S_OK = 0
et sans ouverture fichier

Code : Tout sélectionner

0
#S_OK = 0
En fait, la condition

Code : Tout sélectionner

If CoInitializeEx_(0, #COINIT_MULTITHREADED) = #S_OK
 Endif
ne se fait pas si un fichier est ouvert :|

Re: Obtenir des informations sur processeur avec "WMI"

Publié : lun. 14/nov./2016 13:20
par celtic88
loool change CoInitializeEx_(0, #COINIT_MULTITHREADED) par CoInitialize_(0)
:idea:
https://msdn.microsoft.com/en-us/librar ... s.85).aspx


Vous devez appeler de Windows :: Foundation :: Initialize pour initialiser le fil au lieu de CoInitializeEx si vous voulez utiliser les API de Windows Runtime ou si vous voulez utiliser à la fois COM et les composants de Windows Runtime. Fenêtres :: Fondation :: Initialize est suffisante pour utiliser des composants COM.


merci google traduction