Listing Bios settings using Windows PowerShell

1

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

user22341

Posted 2019-01-26T11:16:45.073

Reputation: 23

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 – 2019-01-26T12:16:56.503

After looking further for the model G6 I have found the following article https://community.spiceworks.com/topic/2156656-wmi-namespace-error-when-running-hp-bios-utility 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).

– CraftyB – 2019-01-26T12:27:46.573

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 – user22341 – 2019-01-26T12:32:54.733

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.” – Daniel B – 2019-01-26T12:53:00.597

Answers

1

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

SMBIOS

lx07

Posted 2019-01-26T11:16:45.073

Reputation: 1 415

Sadly this only gives information about the bios not the current setting – user22341 – 2019-01-26T12:44:05.593

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. – lx07 – 2019-01-26T12:55:38.043

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. – user22341 – 2019-01-26T13:01:48.697

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

harrymc

Posted 2019-01-26T11:16:45.073

Reputation: 306 093

This only gives information about the bios and whats supported not the current settings of the bios – user22341 – 2019-01-26T12:43:04.287

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. – Ramhound – 2019-01-26T14:44:26.643