Google Answers Logo
View Question
Q: Getting system information from DMI/SMBIOS? ( No Answer,   3 Comments )
Subject: Getting system information from DMI/SMBIOS?
Category: Computers > Programming
Asked by: damoncz-ga
List Price: $10.00
Posted: 28 Oct 2002 14:20 PST
Expires: 03 Dec 2002 20:15 PST
Question ID: 91385
I need to read system information from SMBIOS/DMI in a Visual C++
program in Windows 98/ME/2000/XP. I have already started to write the
code to read the structure from SMBIOS(after finding the location in
BIOS) but since it is a painstaking task I wanted to get an already
made source/library. I know there are a few commercial libraries out
there to do it, but is there any free source code/library to help me

Request for Question Clarification by mathtalk-ga on 09 Nov 2002 13:40 PST
Hi, damoncz:

Please check the links I provided below as comments.  Source code for
the decoding of SMBIOS either in DOS or Windows is provided there as
assembler, which can be exploited under Visual C++ with less effort
than rewriting in C/C++.  If this addresses your needs I'd like to
post this as an answer.

Thanks in advance,

Clarification of Question by damoncz-ga on 09 Nov 2002 14:00 PST
Dear mathtalk-ga,
I am aware of that website and their SMBIOS program. Unfortunately, it
is all written in assembly and it is not very useful to port it into
C++. I don't have any problem finding the SMBIOS signature in BIOS and
reading data from. I have started writting a library myself, and I
have completted it up to Structure Table 7 of DMI, but because it was
a tedious task to finish it up I thought maybe there is a library
available in C++.
I appreciate your help and I still would be happy if you can find any
useful information or a library. We can even negotiate a higher
fee(other than the List price in google) if you can port or provide me
a library :-)
Thanks again!

Request for Question Clarification by mathtalk-ga on 10 Nov 2002 07:17 PST
Hi, damon:

Thanks for the clarification.  To explore the idea of doing some
custom programming a bit further, or just to kick some ideas around,
which version of Visual C++ are you using?  Have you considered
storing the SMBIOS information in an XML format?  What kind of
presentation are you striving for in outputting the data?

regards, mathtalk

Clarification of Question by damoncz-ga on 11 Nov 2002 10:08 PST
I am programming in VisualStudio.NET but this library that I am
developing is  written in Standard C++(without MFC). I hadn't thought
of outputting data into XML format but thats a good idea to use in
future versions of the program. This library searches the BIOS from
SBMBIOS location and fills its C++ structure(struct, there are about
40 of them) with SMBIOS structures, and user can access to the
structure through some functions. Basically, I need to read SMBIOS
info to get system information(such as its BIOS, Motherboard, et.c)

Request for Question Clarification by mathtalk-ga on 11 Nov 2002 19:55 PST
Apparently MS has put some SMBIOS structure C++ classes together for
WBEM under the Windows DDK.  If you want, I can research that and
summmarize as an answer.  It is described as being "free" to IHV's,
ISV's, and OEM's.  I'd guess we qualify as ISV's in some sense:

Hope this helps,
There is no answer at this time.

Subject: Re: Getting system information from DMI/SMBIOS?
From: dbistline-ga on 28 Oct 2002 21:04 PST
Free and Windows on the same planet...Come out in the open(Java) were waiting...
Subject: Re: Getting system information from DMI/SMBIOS?
From: mathtalk-ga on 30 Oct 2002 20:39 PST
You perhaps discovered this for yourself:

That purports to allow FTP downloads of a Windows utility (with ASM
source code) to display DMI and SMBIOS information.  I couldn't get
the link to work from IE... didn't try to directly FTP GET the file

regards, mathtalk-ga
Subject: Re: Getting system information from DMI/SMBIOS?
From: mathtalk-ga on 07 Nov 2002 18:56 PST
Hi, damoncz-ga:

I'm not sure if it was the different page links or the phase of the
moon, but tonight I was able to download the zip files with source and
executables for both DOS and Windows versions of the SMBIOS utility

Maybe you could post some sort of clarification if you are still
interested in this "answer", e.g. whether some assembler source is of
any use to you, etc.

regards, mathtalk-ga

Important Disclaimer: Answers and comments provided on Google Answers are general information, and are not intended to substitute for informed professional medical, psychiatric, psychological, tax, legal, investment, accounting, or other professional advice. Google does not endorse, and expressly disclaims liability for any product, manufacturer, distributor, service or service provider mentioned or any opinion expressed in answers or comments. Please read carefully the Google Answers Terms of Service.

If you feel that you have found inappropriate content, please let us know by emailing us at with the question ID listed above. Thank you.
Search Google Answers for
Google Answers  

Google Home - Answers FAQ - Terms of Service - Privacy Policy