Link to home
Start Free TrialLog in
Avatar of swsbuyer
swsbuyer

asked on

How to read BIO information programmatically

I need to access some of the BIOS settings during our software install. The kind of information I need to access includes:

a) Whether USB 2.0 is enabled or not
b) Whether Parallel ATA is enabled or not

Is there a way to programmatically access this kind of information from BIOS memory. I need to write this in C++ or C on Windows XP.

Thanks.
SOLUTION
Avatar of leonjs
leonjs
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
ASKER CERTIFIED SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of swsbuyer
swsbuyer

ASKER

Not all settings in BIOS can be read using the BIOS structure in Windows. However, the BIOS information maps to something or other in WMI classes. A list of classes in WMI can be found here:

http://www.it-visions.de/scripting/WMIReferenz.asp?C_Klassentypen=4&C_Suchwort=ata&C_SubmitSearch=Search

An excellent way to extract the WMI information is by using the "wmic" utility:

wmic path <WMI class name>