Is there a way from within windows to identify which BIOS is in the machine?

1

I'm wondering if there's a way to retrieve information on the BIOS from within Windows 7 without rebooting and going into the BIOS.

I've checked Control Panel\System and Security\System and Device Manager.

A registry key or a built-in GUI or commandline tool is fine, I would also settle for something I have to download if there is no included way.

The more info it can get the better. For instance American Megatrends / Phoenix / Award plus version numbers, dates, whatever.

UPDATE

I have now been able to find some settings in the registry...

  • HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\SystemBiosDate
  • HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\SystemBiosVersion
  • HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\VideoBiosDate
  • HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\VideoBiosVersion

Is there any more detailed information that can also be retrieved from within the OS?

hippietrail

Posted 2011-08-14T08:02:39.547

Reputation: 3 699

Question was closed 2018-05-07T10:46:52.610

@Mazura: I was asking this question 3 and a half years before it was cool (-; – hippietrail – 2018-05-07T10:46:45.323

By "information on the BIOS" do you mean information about the BIOS or actual settings within the BIOS? – Tarek Fadel – 2011-08-14T09:05:33.660

@Tarek Fadel: The former, "information about the BIOS". – hippietrail – 2011-08-14T16:58:36.270

You can't then. That's up to the manufacturer to implement (and provide software for). I've seen some (e.g. ASUS/Gigabyte) do this on their recent motherboards, but there is no use-for-all program. – Breakthrough – 2011-08-15T00:18:54.687

Answers

2

If you don't mind a little vbscript, the code below will return everything that Windows knows about the BIOS. I can't take credit for the code - it comes directly from the Microsoft Scriptomatic app.

Copy the code below into a file called BIOS-Info.vbs (or whatever you want to name it), and then at a command prompt type: cscript BIOS-info.vbs

vbscript code follows:

On Error Resume Next

Const wbemFlagReturnImmediately = &h10
Const wbemFlagForwardOnly = &h20

arrComputers = Array(".")
For Each strComputer In arrComputers
   WScript.Echo
   WScript.Echo "=========================================="
   WScript.Echo "Computer: " & strComputer
   WScript.Echo "=========================================="

   Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
   Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_BIOS", "WQL", _
                                          wbemFlagReturnImmediately + wbemFlagForwardOnly)

   For Each objItem In colItems
      strBiosCharacteristics = Join(objItem.BiosCharacteristics, ",")
         WScript.Echo "BiosCharacteristics: " & strBiosCharacteristics
      strBIOSVersion = Join(objItem.BIOSVersion, ",")
         WScript.Echo "BIOSVersion: " & strBIOSVersion
      WScript.Echo "BuildNumber: " & objItem.BuildNumber
      WScript.Echo "Caption: " & objItem.Caption
      WScript.Echo "CodeSet: " & objItem.CodeSet
      WScript.Echo "CurrentLanguage: " & objItem.CurrentLanguage
      WScript.Echo "Description: " & objItem.Description
      WScript.Echo "IdentificationCode: " & objItem.IdentificationCode
      WScript.Echo "InstallableLanguages: " & objItem.InstallableLanguages
      WScript.Echo "InstallDate: " & WMIDateStringToDate(objItem.InstallDate)
      WScript.Echo "LanguageEdition: " & objItem.LanguageEdition
      strListOfLanguages = Join(objItem.ListOfLanguages, ",")
         WScript.Echo "ListOfLanguages: " & strListOfLanguages
      WScript.Echo "Manufacturer: " & objItem.Manufacturer
      WScript.Echo "Name: " & objItem.Name
      WScript.Echo "OtherTargetOS: " & objItem.OtherTargetOS
      WScript.Echo "PrimaryBIOS: " & objItem.PrimaryBIOS
      WScript.Echo "ReleaseDate: " & WMIDateStringToDate(objItem.ReleaseDate)
      WScript.Echo "SerialNumber: " & objItem.SerialNumber
      WScript.Echo "SMBIOSBIOSVersion: " & objItem.SMBIOSBIOSVersion
      WScript.Echo "SMBIOSMajorVersion: " & objItem.SMBIOSMajorVersion
      WScript.Echo "SMBIOSMinorVersion: " & objItem.SMBIOSMinorVersion
      WScript.Echo "SMBIOSPresent: " & objItem.SMBIOSPresent
      WScript.Echo "SoftwareElementID: " & objItem.SoftwareElementID
      WScript.Echo "SoftwareElementState: " & objItem.SoftwareElementState
      WScript.Echo "Status: " & objItem.Status
      WScript.Echo "TargetOperatingSystem: " & objItem.TargetOperatingSystem
      WScript.Echo "Version: " & objItem.Version
      WScript.Echo
   Next
Next


Function WMIDateStringToDate(dtmDate)
WScript.Echo dtm: 
    WMIDateStringToDate = CDate(Mid(dtmDate, 5, 2) & "/" & _
    Mid(dtmDate, 7, 2) & "/" & Left(dtmDate, 4) _
    & " " & Mid (dtmDate, 9, 2) & ":" & Mid(dtmDate, 11, 2) & ":" & Mid(dtmDate,13, 2))
End Function

Scott McKinney

Posted 2011-08-14T08:02:39.547

Reputation: 884

I forgot about that, Ive even used that script before. – Keltari – 2011-08-14T23:15:06.060

1

msinfo32.exe will give you some information about the BIOS.

Keltari

Posted 2011-08-14T08:02:39.547

Reputation: 57 019

1

Open Microsoft Word, click the help menu, and then click "About Microsoft Word", Then click "System Info". You will find everything there. Hope that helps.

jim duffy

Posted 2011-08-14T08:02:39.547

Reputation: 11

Ah I see it just runs msinfo32.exe that Keltari talks about in his answer.

– hippietrail – 2011-10-06T17:07:37.330

0

I'm not certain but I think that cpuid may do it you can download it from here.

http://www.cpuid.com/softwares/cpu-z.html

Col

Posted 2011-08-14T08:02:39.547

Reputation: 6 995