?
Solved

Dell Service Tag

Posted on 2003-12-03
10
Medium Priority
?
6,818 Views
Last Modified: 2008-02-01
Hi There,

Is there any way to access the Dell Service Tag programmically?

OS : WinXp
Visual Studio 6

Cheers
0
Comment
Question by:TopCat_UK
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
  • 2
  • +1
10 Comments
 
LVL 32

Assisted Solution

by:jhance
jhance earned 300 total points
ID: 9865715
I've not seen this documented but it must be possible because the Dell support program reads it.  My guess is that it's stored in the registry somewhere.

On my Dell, I found it under:

HKLM\Software\Dell Computer Corporation\OpenManage\Resolution Assistant\...

Should get you pointed in the right direction.

***********************************************************************************
                                   COMMENT DISCLAIMER
***********************************************************************************
   CAUTION - CAUTION - CAUTION - CAUTION - CAUTION - CAUTION - CAUTION - CAUTION
***********************************************************************************
                           READ THIS COMMENT AT YOUR OWN RISK

 This helpful comment MAY include straight talk relating to or about your question.
   If you are easily offended by such talk, please disregard this comment in its
                                        entirely.
***********************************************************************************
                               Thank you for your cooperation
***********************************************************************************
0
 
LVL 1

Author Comment

by:TopCat_UK
ID: 9865758
I have checked the registry.  I have a different hive to you, because openmanage/client is all I have.  
I may be missing the Resolution Assistant because the correct dell software isn't included????
0
 
LVL 32

Expert Comment

by:jhance
ID: 9865771
If you re-installed Windows, the Dell service tag will not be stored on the system.  I think SOME Dell models have the service tag programmed into the BIOS/CMOS memory and this could be retrieved by a BIOS RAM readout application but you'd need to do some detective work to find the actual place they store the data.

As I said, however, I just looked at my specific Dell and found the service tag in the registry.  Did you search your entire registry for your service tag #?

***********************************************************************************
                                   COMMENT DISCLAIMER
***********************************************************************************
   CAUTION - CAUTION - CAUTION - CAUTION - CAUTION - CAUTION - CAUTION - CAUTION
***********************************************************************************
                           READ THIS COMMENT AT YOUR OWN RISK

 This helpful comment MAY include straight talk relating to or about your question.
   If you are easily offended by such talk, please disregard this comment in its
                                        entirely.
***********************************************************************************
                               Thank you for your cooperation
***********************************************************************************
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 1

Author Comment

by:TopCat_UK
ID: 9865799
The registry doesn't contain the tag.

I think I am going to have to write an app to read the BIOS/CMOS memory.

Bummer.
0
 
LVL 1

Author Comment

by:TopCat_UK
ID: 9865926
I think the answer lies in DSMBIOS accessed via dells dsmbios.dll.
0
 
LVL 32

Expert Comment

by:jhance
ID: 9865946
That does look promising.  Run DSMBIOS.DLL through:

DUMPBIN with the /EXPORTS option and see what kind of functions this DLL is exporting.  Could help you find the way to do it.

***********************************************************************************
                                   COMMENT DISCLAIMER
***********************************************************************************
   CAUTION - CAUTION - CAUTION - CAUTION - CAUTION - CAUTION - CAUTION - CAUTION
***********************************************************************************
                           READ THIS COMMENT AT YOUR OWN RISK

 This helpful comment MAY include straight talk relating to or about your question.
   If you are easily offended by such talk, please disregard this comment in its
                                        entirely.
***********************************************************************************
                               Thank you for your cooperation
***********************************************************************************
0
 
LVL 16

Accepted Solution

by:
Kyle Schroeder earned 450 total points
ID: 10147748
We use code similar to this to retrieve the information from WMI.  I believe there is a WMI entry for serial number too, though it is not included in this report (a modified version of this script is used after dumping an OS image to a machine before running our customized mini-setup wizard, to install the proper drivers for a specific model, etc).  Note that this is of course VBScript, not C++, but the WMI methods may be the way to go.  This may reveal something useful also:
http://www.faqshop.com/sms/default.htm?http://faqshop.com/sms/windows/dell%20dmi%20cli%20asset%20info.htm

' COMMENT: Example of using WMI to retrieve the computer model information
'
'==========================================================================
Dim wShell
Dim oWMI
Dim oEnum
Dim oInst
Dim sManufacturer, sModel, sChassis

Set wShell = CreateObject("Wscript.Shell")
Set oWMI = GetObject("WinMgmts:root/cimv2")

Set oEnum = oWMI.ExecQuery("SELECT Manufacturer, Model from Win32_ComputerSystem")
For Each oInst in oEnum
     sManufacturer = oInst.Manufacturer
     sModel = oInst.Model
Next

Set oEnum = oWMI.ExecQuery("SELECT ChassisTypes From Win32_SystemEnclosure")
For Each oInst in oEnum
     For each i in oInst.chassistypes
          sChassis = i
     Next
Next

Select Case sChassis
     Case 1: sChassis = "Other"
     Case 2 : sChassis = "Unknown"
     Case 3 : sChassis = "Desktop"
     Case 4 : sChassis = "Low Profile Desktop"
     Case 5 : sChassis = "Pizza Box"
     Case 6 : sChassis = "Mini Tower"
     Case 7 : sChassis = "Tower"
     Case 8 : sChassis = "Portable"
     Case 9 : sChassis = "Laptop"
     Case 10 : sChassis = "Notebook"
     Case 11 : sChassis = "Hand Held"
     Case 12 : sChassis = "Docking Station"
     Case 13 : sChassis = "All in One"
     Case 14 : sChassis = "Sub Notebook"
     Case 15 : sChassis = "Space-Saving"
     Case 16 : sChassis = "Lunch Box"
     Case 17 : sChassis = "Main System Chassis"
     Case 18 : sChassis = "Expansion Chassis"
     Case 19 : sChassis = "SubChassis"
     Case 20 : sChassis = "Bus Expansion Chassis"
     Case 21 : sChassis = "Peripheral Chassis"
     Case 22 : sChassis = "Storage Chassis"
     Case 23 : sChassis = "Rack Mount Chassis"
     Case 24 : sChassis = "Sealed-Case PC"
End Select

Dim sMsg
sMsg = "WMI returned the following computer model information." & vbCrLf & vbCrLf &_
          "Chassis: |" & sChassis & "|" & vbCrLf &_
          "Manufacturer: |" & sManufacturer & "|" & vbcrlf &_
          "Model: |" & sModel & "|" & vbCrLf & vbCrLf &_
          "NOTE: ""|"" characters were added in case leading or " & vbCrLf &_
          "trailing spaces exist.  They are not part of the information" & vbCrLf &_
          "stored in WMI."

MsgBox sMsg,,"WMI Model Information"

Set oInst = Nothing
Set oEnum = Nothing
Set oWMI = Nothing
Set wShell = Nothing

dogztar
0
 
LVL 5

Expert Comment

by:migoEX
ID: 10333668
No comment has been added lately, so it's time to clean up this TA.
I will leave a recommendation in the Cleanup topic area that this question is:

Split between jhance and dogztar.

Please leave any comments here within the next four days.

PLEASE DO NOT ACCEPT THIS COMMENT AS AN ANSWER!

migoEX
EE Cleanup Volunteer
0
 
LVL 1

Author Comment

by:TopCat_UK
ID: 10340723
Agree. Thanks Guys.
0
 
LVL 5

Expert Comment

by:migoEX
ID: 10340766
TopCat_UK: So why don't you do it by yourself? Just click on "split points" link.
0

Featured Post

New feature and membership benefit!

New feature! Upgrade and increase expert visibility of your issues with Priority Questions.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Many modern programming languages support the concept of a property -- a class member that combines characteristics of both a data member and a method.  These are sometimes called "smart fields" because you can add logic that is applied automaticall…
Container Orchestration platforms empower organizations to scale their apps at an exceptional rate. This is the reason numerous innovation-driven companies are moving apps to an appropriated datacenter wide platform that empowers them to scale at a …
The goal of the video will be to teach the user the difference and consequence of passing data by value vs passing data by reference in C++. An example of passing data by value as well as an example of passing data by reference will be be given. Bot…
The viewer will learn how to use the return statement in functions in C++. The video will also teach the user how to pass data to a function and have the function return data back for further processing.
Suggested Courses
Course of the Month10 days, 19 hours left to enroll

770 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question