MSFN Forum: Does anybody know a tool read bios information - MSFN Forum

Jump to content



Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Does anybody know a tool read bios information Rate Topic: -----

#1 User is offline   the.neon 

  • Newbie
  • Group: Members
  • Posts: 15
  • Joined: 06-June 04

Posted 08 February 2005 - 08:27 AM

Hello,
does anybody know a tool read bios information. Barts PE is the OS for this tool.


Tanks

neon


#2 User is offline   jaclaz 

  • The Finder
  • Group: Developers
  • Posts: 9,112
  • Joined: 23-July 04
  • OS:none specified
  • Country: Country Flag

Posted 08 February 2005 - 09:00 AM

The one you should need is smbios:
http://www.techweb.c...s/2000/0825.htm

Though I cannot say if it works under Bart, the 16 bit version works under 2000 and Xp, so it "should" work under Bart too.

If you are interested in BIOS modding, a fairly good list of progs is here:
http://www.icronticf...hread.php?t=507

jaclaz

#3 User is offline   mbouchard 

  • Member
  • PipPip
  • Group: Members
  • Posts: 162
  • Joined: 21-April 04

Posted 08 February 2005 - 11:50 AM

How about WMI? If I am not mistaken, BartsPE supports it.

#4 User is offline   muevelonyc 

  • USB Key Freak
  • Pip
  • Group: Members
  • Posts: 67
  • Joined: 05-August 04

Posted 08 February 2005 - 03:30 PM

WMI calls to the bios works (for PE 2004 at least, which is WinXP SP2 based). You just have to code it to call it. I use it to poll the model, serial #, and the current bios rom version.

#5 User is offline   plangone 

  • Group: Members
  • Posts: 1
  • Joined: 19-October 04

Posted 08 February 2005 - 03:46 PM

As others noted, PE 2004 supports WMI if you build it using the /WMI switch. Then you just need a VBS or WSH script to read what you want.

For example, this will pull the serial number from the BIOS.

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colBIOS = objWMIService.ExecQuery _
("Select * from Win32_BIOS")
For each objBIOS in colBIOS
serialnumber = objBIOS.SerialNumber
Next

Microsoft's Scriptomatic tool will help you create quick WMI code.

#6 User is offline   Bilou_Gateux 

  • Powered by Windows Embedded
  • PipPipPipPipPip
  • Group: Members
  • Posts: 766
  • Joined: 03-January 04

Posted 14 February 2005 - 09:32 AM

MITeC

select "System Information Component"

download the freeware package: contains RBE ROM BIOS Explorer - tool for BIOS/SMBIOS/DMI browsing and disassembling.

Works fine under XP Embedded, haven't yet checked under PE.

File > Details <CTRL>+<D> will give you all infos read from SMBIOS.

#7 User is offline   jgould 

  • Group: Members
  • Posts: 2
  • Joined: 10-February 05

  Posted 16 February 2005 - 01:02 PM

where do you enable the /WMI switch in BartPE? I also saw nothing on the Bart web site about supporting WMI, but I hope it does!

:huh:

#8 User is offline   toasterking 

  • Group: Members
  • Posts: 2
  • Joined: 14-January 08

Posted 08 July 2009 - 05:42 PM

I know I'm a little late for this thread, but I also had difficulty adding WMI support to BartPE. We use BartPE to deploy operating systems, which need to be automatically selected based on the hardware platform we are installing onto. Thus I needed to enable WMI in BartPE to be able to query the BIOS for its System and Model strings, which can then be used to automatically select the OS and start installation. Despite the overhead, I still wanted to maintain a fairly minimal footprint for BartPE. I tried several solutions suggested in this and other forums but none worked for me or provided enough information. This is how I finally got it to work:

1. Download and extract the Windows XPE plugin 1.0.7 (by Sherpya) for BartPE, and copy to the plugins directory.
2. Run PEBuilder and enable these plugins:
Windows XPE v1.0.7
Windows XPE: Defaults v1.0.7
Windows XPE: MMC v1.0.7
Windows XPE: WMI v1.0.7
Then build BartPE.
3. Boot a computer from new BartPE image. Start command prompt and type:
xpeinit -w
4. Wait until a subdirectory called "Repository" is created in %temp%. Copy it back to the PEBuilder file structure. Store it in the Includes directory specified in PEBuilder, under the path:
[includes folder]\I386\system32\wbem
5. Run PEBuilder and disable this plugin:
Windows XPE: Defaults v1.0.7
6. Build BartPE again, being sure that the Includes directory is populated in PEBuilder.

I provide this in hopes that someone else finds it valuable.

#9 User is offline   toasterking 

  • Group: Members
  • Posts: 2
  • Joined: 14-January 08

Posted 08 July 2009 - 05:47 PM

BTW, I used AutoIt 3 to read the data from the BIOS by querying WMI via COM. This is the code I used:

#cs ----------------------------------------------------------------------------

 AutoIt Version: 3.3.0.0
 Author:		 Toasterking

 Script Function:
	Writes WMI strings from BIOS to file.

#ce ----------------------------------------------------------------------------

If FileExists(@TempDir & "\BIOS_Strings.txt") Then FileDelete(@TempDir & "\BIOS_Strings.txt")

$ObjWMIService = ObjGet('winmgmts:{impersonationLevel=impersonate}!\\' & @ComputerName & '\root\cimv2'); Create handle to WMI object
If (IsObj($ObjWMIService)) And (Not @error) Then; If successsful
	$ColumnCompsys = $ObjWMIService.ExecQuery('Select * from Win32_ComputerSystem')
	$BIOSSystem = 0
	For $ObjCompsys In $ColumnCompsys
		$BIOSSystem = $ObjCompsys.Model
	Next
	If $BIOSSystem Then FileWriteLine(@TempDir & "\BIOS_Strings.txt","System: " & $BIOSSystem)
	$ColumnBIOS = $ObjWMIService.ExecQuery('Select * from Win32_BIOS')
	$BIOSSerial = 0
	For $ObjBIOS In $ColumnBIOS
		$BIOSSerial = $ObjBIOS.SerialNumber
	Next
	If $BIOSSerial Then FileWriteLine(@TempDir & "\BIOS_Strings.txt","Serial: " & $BIOSSerial)
Else; If unsuccessful in creating COM object
	MsgBox(262192,"Uh-oh","Cannot create a reference to a COM object for WMI.  Unable to retrieve WMI information.  Strings will not be read from the BIOS and auto-selection of Windows edition will not be properly influenced.  Please notify a workstation configuration engineer that you received this message.")
EndIf


Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users



All trademarks mentioned on this page are the property of their respective owners
Copyright © 2001 - 2011 msfn.org
Privacy Policy