Listing Bios settings using Windows PowerShell

11,509

Solution 1

Below are three methods to find BIOS information from inside Windows.

BIOS via PowerShell

To use get all information related to the BIOS:

Get-WmiObject -Class Win32_BIOS

The above command will give a small subset of properties of the Win32_BIOS class. To list all the properties use this:

Get-WmiObject -Class Win32_BIOS | Format-List *

Other classes are:

CIM_BIOSElement
CIM_BIOSFeature
CIM_BIOSFeaturedBIOSElements
CIM_BIOSLoadedlnNV
CIM_VideoBIOSElemnt
CIM_VideoBIOSFeatureVideoBIOSElements
Win32_SMBIOSMemory
Class Win32_SystemBIOS

BIOS via wmic

The command:

wmic bios list full

May give the following details:

BiosCharacteristics={7,8,11,12,15,16,19,26,27,28,29,32,33,39,40,41,42,43}
BuildNumber=
CodeSet=
CurrentLanguage=en-US
Description=Default System BIOS
IdentificationCode=
InstallableLanguages=14
InstallDate=
LanguageEdition=
ListOfLanguages={"en-US","da-DK","nl-NL","fi-FI","fr-FR","de-DE","it-IT","ja-JP","no-NO","pt-PT","es-ES","sv-SE","zh-CN","zh-TW"}
Manufacturer=Hewlett-Packard
Name=Default System BIOS
OtherTargetOS=
PrimaryBIOS=TRUE
ReleaseDate=20170714000000.000000+000
SerialNumber=2CE22901QJ
SMBIOSBIOSVersion=68IRR Ver. F.64
SMBIOSMajorVersion=2
SMBIOSMinorVersion=7
SMBIOSPresent=TRUE
SoftwareElementID=Default System BIOS
SoftwareElementState=3
Status=OK
TargetOperatingSystem=0
Version=HPQOEM – f

BIOS via the registry

The BIOS info is in the key HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\BIOS.

This might look like:

enter image description here

Solution 2

If you are happy to use a third party program you could try RWEverything.

SMBIOS

Share:
11,509

Related videos on Youtube

user22341
Author by

user22341

Updated on September 18, 2022

Comments

  • user22341
    user22341 over 1 year

    I have a Hp Pavilion g6 laptop running Windows 10 Pro and I would like to list all (or as much) bios setting as I can from within windows without actually going into the bios for debugging purposes. I searched online and I was able to find this PowerShell line

    Get-WmiObject -Namespace root/hp/instrumentedBIOS -Class hp_biosEnumeration |Format-Table Name,Value -AutoSize

    but it gives me this error

    Get-WmiObject : Invalid namespace "root/hp/instrumentedBIOS" At line:1 char:1 + Get-WmiObject -Namespace root/hp/instrumentedBIOS -Class hp_biosEnume ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument: (:) [Get-WmiObject], ManagementException + FullyQualifiedErrorId : GetWMIManagementException,Microsoft.PowerShell.Commands.GetWmiObjectCommand

    and i don't know where to go from here

    • CraftyB
      CraftyB over 5 years
      gwmi -class hp_biossettinginterface -Namespace "root\hp\instrumentedbios" , can you please try this?, found this is a forum for a G3, unfortunately I don't own any HP hardware to try.
    • CraftyB
      CraftyB over 5 years
      After looking further for the model G6 I have found the following article community.spiceworks.com/topic/… with a response from HP stating "BCU is a command-line utility for controlling various BIOS settings on a supported HP notebook, desktop, or workstation system. It requires a BIOS that supports HP WMI Namespace within the BIOS.", Whilst your not trying to use the BCU application if the wmi namespace is unavailable due to not being supported you will not be able to read from it via any other software (powershell etc).
    • user22341
      user22341 over 5 years
      yeah i have figured that sadly. maybe there is a 3rd to what i need. I just need to read the setting and nothing else
    • Daniel B
      Daniel B over 5 years
      According to the HP CMI whitepaper, there may be a compatibility software layer that provides these WMI namespaces on otherwise unsupported systems: “The HP CMI Software Provider, available as a SoftPaq downloadable from HP.com, extends many of the capabilities of the HP Client Management Interface for legacy HP business computers.”
  • user22341
    user22341 over 5 years
    This only gives information about the bios and whats supported not the current settings of the bios
  • user22341
    user22341 over 5 years
    Sadly this only gives information about the bios not the current setting
  • lx07
    lx07 over 5 years
    Look again at the picure above - it gives the current setting. Bit18 for example - 'Boot from PC Card' is set to "0" so it isn't allowed.
  • user22341
    user22341 over 5 years
    Alright, I admit that I missed that one. sorry for that. I'll do some test and see if this too can do what I need.
  • Ramhound
    Ramhound over 5 years
    It shows the same information as RWEverything, although based on what I see, just not in a verbose mode. For example, it displays the BIOS Characteristics values, but leaves it up to you to determine which Bits are set.