Jump to content

get computer make & model help?


am632
 Share

Recommended Posts

The Scriptomatic WMI tool is always quite helpful. The following code was generated by this tool:

; Generated by AutoIt Scriptomatic

$wbemFlagReturnImmediately = 0x10
$wbemFlagForwardOnly = 0x20
$colItems = ""
$strComputer = "localhost"

$Output=""
$Output = $Output & "Computer: " & $strComputer  & @CRLF
$Output = $Output & "==========================================" & @CRLF
$objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\root\CIMV2")
$colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_ComputerSystemProduct", "WQL", _
                                        $wbemFlagReturnImmediately + $wbemFlagForwardOnly)

If IsObj($colItems) then
   For $objItem In $colItems
    $Output = $Output & "Caption: " & $objItem.Caption & @CRLF
    $Output = $Output & "Description: " & $objItem.Description & @CRLF
    $Output = $Output & "IdentifyingNumber: " & $objItem.IdentifyingNumber & @CRLF
    $Output = $Output & "Name: " & $objItem.Name & @CRLF
    $Output = $Output & "SKUNumber: " & $objItem.SKUNumber & @CRLF
    $Output = $Output & "UUID: " & $objItem.UUID & @CRLF
    $Output = $Output & "Vendor: " & $objItem.Vendor & @CRLF
    $Output = $Output & "Version: " & $objItem.Version & @CRLF
    if Msgbox(1,"WMI Output",$Output) = 2 then ExitLoop
    $Output=""
   Next
Else
   Msgbox(0,"WMI Output","No WMI Objects Found for class: " & "Win32_ComputerSystemProduct" )
Endif
or this one:

; Generated by AutoIt Scriptomatic

$wbemFlagReturnImmediately = 0x10
$wbemFlagForwardOnly = 0x20
$colItems = ""
$strComputer = "localhost"

$Output=""
$Output = $Output & "Computer: " & $strComputer  & @CRLF
$Output = $Output & "==========================================" & @CRLF
$objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\root\CIMV2")
$colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_ComputerSystem", "WQL", _
                                        $wbemFlagReturnImmediately + $wbemFlagForwardOnly)

If IsObj($colItems) then
   For $objItem In $colItems
    $Output = $Output & "AdminPasswordStatus: " & $objItem.AdminPasswordStatus & @CRLF
    $Output = $Output & "AutomaticResetBootOption: " & $objItem.AutomaticResetBootOption & @CRLF
    $Output = $Output & "AutomaticResetCapability: " & $objItem.AutomaticResetCapability & @CRLF
    $Output = $Output & "BootOptionOnLimit: " & $objItem.BootOptionOnLimit & @CRLF
    $Output = $Output & "BootOptionOnWatchDog: " & $objItem.BootOptionOnWatchDog & @CRLF
    $Output = $Output & "BootROMSupported: " & $objItem.BootROMSupported & @CRLF
    $Output = $Output & "BootupState: " & $objItem.BootupState & @CRLF
    $Output = $Output & "Caption: " & $objItem.Caption & @CRLF
    $Output = $Output & "ChassisBootupState: " & $objItem.ChassisBootupState & @CRLF
    $Output = $Output & "CreationClassName: " & $objItem.CreationClassName & @CRLF
    $Output = $Output & "CurrentTimeZone: " & $objItem.CurrentTimeZone & @CRLF
    $Output = $Output & "DaylightInEffect: " & $objItem.DaylightInEffect & @CRLF
    $Output = $Output & "Description: " & $objItem.Description & @CRLF
    $Output = $Output & "Domain: " & $objItem.Domain & @CRLF
    $Output = $Output & "DomainRole: " & $objItem.DomainRole & @CRLF
    $Output = $Output & "EnableDaylightSavingsTime: " & $objItem.EnableDaylightSavingsTime & @CRLF
    $Output = $Output & "FrontPanelResetStatus: " & $objItem.FrontPanelResetStatus & @CRLF
    $Output = $Output & "InfraredSupported: " & $objItem.InfraredSupported & @CRLF
    $strInitialLoadInfo = $objItem.InitialLoadInfo(0)
    $Output = $Output & "InitialLoadInfo: " & $strInitialLoadInfo & @CRLF
    $Output = $Output & "InstallDate: " & WMIDateStringToDate($objItem.InstallDate) & @CRLF
    $Output = $Output & "KeyboardPasswordStatus: " & $objItem.KeyboardPasswordStatus & @CRLF
    $Output = $Output & "LastLoadInfo: " & $objItem.LastLoadInfo & @CRLF
    $Output = $Output & "Manufacturer: " & $objItem.Manufacturer & @CRLF
    $Output = $Output & "Model: " & $objItem.Model & @CRLF
    $Output = $Output & "Name: " & $objItem.Name & @CRLF
    $Output = $Output & "NameFormat: " & $objItem.NameFormat & @CRLF
    $Output = $Output & "NetworkServerModeEnabled: " & $objItem.NetworkServerModeEnabled & @CRLF
    $Output = $Output & "NumberOfLogicalProcessors: " & $objItem.NumberOfLogicalProcessors & @CRLF
    $Output = $Output & "NumberOfProcessors: " & $objItem.NumberOfProcessors & @CRLF
    $strOEMLogoBitmap = $objItem.OEMLogoBitmap(0)
    $Output = $Output & "OEMLogoBitmap: " & $strOEMLogoBitmap & @CRLF
    $strOEMStringArray = $objItem.OEMStringArray(0)
    $Output = $Output & "OEMStringArray: " & $strOEMStringArray & @CRLF
    $Output = $Output & "PartOfDomain: " & $objItem.PartOfDomain & @CRLF
    $Output = $Output & "PauseAfterReset: " & $objItem.PauseAfterReset & @CRLF
    $strPowerManagementCapabilities = $objItem.PowerManagementCapabilities(0)
    $Output = $Output & "PowerManagementCapabilities: " & $strPowerManagementCapabilities & @CRLF
    $Output = $Output & "PowerManagementSupported: " & $objItem.PowerManagementSupported & @CRLF
    $Output = $Output & "PowerOnPasswordStatus: " & $objItem.PowerOnPasswordStatus & @CRLF
    $Output = $Output & "PowerState: " & $objItem.PowerState & @CRLF
    $Output = $Output & "PowerSupplyState: " & $objItem.PowerSupplyState & @CRLF
    $Output = $Output & "PrimaryOwnerContact: " & $objItem.PrimaryOwnerContact & @CRLF
    $Output = $Output & "PrimaryOwnerName: " & $objItem.PrimaryOwnerName & @CRLF
    $Output = $Output & "ResetCapability: " & $objItem.ResetCapability & @CRLF
    $Output = $Output & "ResetCount: " & $objItem.ResetCount & @CRLF
    $Output = $Output & "ResetLimit: " & $objItem.ResetLimit & @CRLF
    $strRoles = $objItem.Roles(0)
    $Output = $Output & "Roles: " & $strRoles & @CRLF
    $Output = $Output & "Status: " & $objItem.Status & @CRLF
    $strSupportContactDescription = $objItem.SupportContactDescription(0)
    $Output = $Output & "SupportContactDescription: " & $strSupportContactDescription & @CRLF
    $Output = $Output & "SystemStartupDelay: " & $objItem.SystemStartupDelay & @CRLF
    $strSystemStartupOptions = $objItem.SystemStartupOptions(0)
    $Output = $Output & "SystemStartupOptions: " & $strSystemStartupOptions & @CRLF
    $Output = $Output & "SystemStartupSetting: " & $objItem.SystemStartupSetting & @CRLF
    $Output = $Output & "SystemType: " & $objItem.SystemType & @CRLF
    $Output = $Output & "ThermalState: " & $objItem.ThermalState & @CRLF
    $Output = $Output & "TotalPhysicalMemory: " & $objItem.TotalPhysicalMemory & @CRLF
    $Output = $Output & "UserName: " & $objItem.UserName & @CRLF
    $Output = $Output & "WakeUpType: " & $objItem.WakeUpType & @CRLF
    $Output = $Output & "Workgroup: " & $objItem.Workgroup & @CRLF
    if Msgbox(1,"WMI Output",$Output) = 2 then ExitLoop
    $Output=""
   Next
Else
   Msgbox(0,"WMI Output","No WMI Objects Found for class: " & "Win32_ComputerSystem" )
Endif


Func WMIDateStringToDate($dtmDate)

    Return (StringMid($dtmDate, 5, 2) & "/" & _
    StringMid($dtmDate, 7, 2) & "/" & StringLeft($dtmDate, 4) _
    & " " & StringMid($dtmDate, 9, 2) & ":" &  StringMid($dtmDate, 11, 2) & ":" & StringMid($dtmDate,13, 2))
EndFunc
Edited by water

My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2024-07-28 - Version 1.6.3.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download
Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki
PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki
Task Scheduler (2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki

Standard UDFs:
Excel - Example Scripts - Wiki
Word - Wiki

Tutorials:
ADO - Wiki
WebDriver - Wiki

 

Link to comment
Share on other sites

  • 7 years later...

This information is stored in the registry and can be retrieved using the RegRead() function. Here's a quick way to read this info from the registry and display it in message boxes.

#RequireAdmin
#include <MsgBoxConstants.au3>

Local $manufacturer = RegRead("HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\BIOS", "SystemManufacturer")
Local $model = RegRead("HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\BIOS", "SystemProductName")

MsgBox($MB_SYSTEMMODAL, "", "Manufacturer: " & $manufacturer)
MsgBox($MB_SYSTEMMODAL, "", "Model: " & $model)

 

Link to comment
Share on other sites

  • Moderators

@postCucumber did you not notice that this thread is 8 years old?! Please don't resurrect old threads.

"Profanity is the last vestige of the feeble mind. For the man who cannot express himself forcibly through intellect must do so through shock and awe" - Spencer W. Kimball

How to get your question answered on this forum!

Link to comment
Share on other sites

  • 1 year later...
On 8/22/2018 at 11:30 PM, postCucumber said:

I did notice, but I also noticed that there was no concise answer and figured that someone could benefit from the answer that I gave. I see no issue in doing this. Sorry if I broke any rules.

@postCucumber Your information was perfect for what I needed. Regardless of this threads age I'm glad you posted to give a concise answer. Thanks a bunch!!

 

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...