Expiring Today—Celebrate National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

Remote WMIC for Dell Service Tag

Posted on 2011-02-23
5
Medium Priority
?
2,028 Views
Last Modified: 2016-02-23
Having some issues.

@echo off
SYSTEMINFO /S “servername” /U “Doamin”\”username” /P “password” /FO CSV >> "C:\My\Desktop\INFO.csv"

Works like a champ. But it does not give me the Dell Service Tag that I need.

@echo off
wmic csproduct get name,vendor,identifyingNumber >> "C:\My\Desktop\Service_Tag_INFO.csv"

works locally, with identifyingNumber being the service tag, but I cannot get it to work remotely.

I need to combine these two and so far, nada. Ultimately I guess,  I just need to get the second one to work.

I have tried;

wmic /node:”Machine-Name” csproduct get name,vendor,identifyingNumber >> "C:\My\Desktop\Service_Tag_INFO.csv"

with no luck. I get “Invalid Global Switch” I certainly plead ignorance to all of the subtleties of using WMIC, so any thoughts would be appreciated.

I am trying to run this from a Windows 7 Professional box to multiple Server 2008R2 boxes. I have turned on WMI through the firewall on the one test server I am trying to hit. As well as in the Inbound and Outbound rules.
0
Comment
Question by:CaineMarko
[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
5 Comments
 
LVL 11

Expert Comment

by:yelbaglf
ID: 34967053
You could try something like this, which uses the Win32_SystemEnclosure Class to pull the SerialNumber property.

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colSMBIOS = objWMIService.ExecQuery _
("Select * from Win32_SystemEnclosure")
For Each objSMBIOS in colSMBIOS
Wscript.Echo "Dell Service Tag: " & objSMBIOS.SerialNumber
Next

Open in new window

0
 
LVL 7

Expert Comment

by:TechnoChat
ID: 34968715
Try this script, you can get service tag of multiple system. This script written by Jim Cameron.


Details:
' Dell-ServiceTag
'
' Purpose: Obtain the Dell service tag from a Dell computer or computers.
'
' Version: 1.0
' Created on: 2008-01-10
' Last updated: 2008-01-10
'
' Created By: Jim Cameron
'
' Download URL:
' http://support.moonpoint.com/downloads/computer_languages/VBScript/Dell-ServiceTag.vbs
'
' Note: Based on a script written by LazyNetworkAdmin
' (http://lazynetworkadmin.com/), which is provided at
' http://lazynetworkadmin.com/content/view/13/6/
'

' Usage: From a command prompt, use "cscript /nologo dell-servicetag.vbs
' <computername1> <computername2>
'
' Examples:
'
' 1. Query computer on which the script is run:
'
' cscript /nologo dell-servicetag.vbs .  
'
' 2. Query multiple computers named a, b, c
'
' cscript /nologo dell-servicetag.vbs a b c
'
' Output:
'
' Computer: a Dell Service Tag: ZRKF461
' Computer: b Dell Service Tag: ZZ89M81
' Computer: c Dell Service Tag: EYCNH41
'
' -------------------------------------------------------------------------- '

' Dell-ServiceTag
'
' Purpose: Obtain the Dell service tag from a Dell computer or computers.
' 
' Version: 1.0
' Created on: 2008-01-10
' Last updated: 2008-01-10
'
' Created By: Jim Cameron
'
' Download URL: 
' http://support.moonpoint.com/downloads/computer_languages/VBScript/Dell-ServiceTag.vbs
'
' Note: Based on a script written by LazyNetworkAdmin 
' (http://lazynetworkadmin.com/), which is provided at
' http://lazynetworkadmin.com/content/view/13/6/
'

' Usage: From a command prompt, use "cscript /nologo dell-servicetag.vbs
' <computername1> <computername2>
'
' Examples:
' 
' 1. Query computer on which the script is run:
'
' cscript /nologo dell-servicetag.vbs .  
' 
' 2. Query multiple computers named a, b, c
'
' cscript /nologo dell-servicetag.vbs a b c
'
' Output:
'
' Computer: a Dell Service Tag: ZRKF461
' Computer: b Dell Service Tag: ZZ89M81
' Computer: c Dell Service Tag: EYCNH41
' 
' -------------------------------------------------------------------------- '

strVersion = "1.0"

' If the system doesn't exist or is inaccessible don't display a window
' with error code in it.
On error resume next

If Wscript.Arguments.Count = 0 Then
   ShowUsage()
Else
    Dim arrComputers()
    For i = 0 to Wscript.Arguments.Count - 1
	Redim Preserve arrComputers(i)
	arrComputers(i) = Wscript.Arguments(i)
    Next
End If
    
For Each strComputer in arrComputers
    Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
    Set colComputer = objWMIservice.ExecQuery("Select * from Win32_BIOS",,48)
    For Each objComputer in colComputer
	If Err.Number=0 Then
           Wscript.Echo "Computer: " & strComputer & " " & _
           "Dell Service Tag: " & objComputer.serialnumber
        Else
            WScript.Echo strComputer & " <system inaccessible>"
            Err.Clear
        End If 
    Next      
Next

Wscript.Quit

sub ShowUsage()
   WScript.Echo "Dell-ServiceTag " & strVersion & vbcrlf & _
   vbcrlf & _
   "Display the service tag for a Dell computer or computers." & vbcrlf & _
   vbcrlf & _
   "Usage: From a command prompt, use cscript /nologo " & _
   "dell-servicetag.vbs computername1" & vbcrl & _
   " computername2" & vbcrlf & _
   vbcrlf & _
   "Examples:" & vbcrlf & _
   vbcrlf & _ 
   " 1. Query computer on which the script is run (a period can be " & vbcrlf _ 
   & "    used in lieu of the name of the current computer):" & vbcrlf & _
   vbcrlf & _
   "    cscript /nologo dell-servicetag.vbs ." & vbcrlf & _  
   vbcrlf & _
   " 2. Query multiple computers named a, b, c:" & vbcrlf & _
   vbcrlf & _
   "    cscript /nologo dell-servicetag.vbs a b c"
   WScript.Quit
End Sub

Open in new window

0
 
LVL 11

Accepted Solution

by:
yelbaglf earned 2000 total points
ID: 34975391
You could also do something like this, which would allow you to run this against any number of PC's or Server's, etc. and write the results to a log file.

On Error Resume Next
Const svcTag_LOG = "\\Path_To_Log\svcTag_LOG.txt"
Const ForReading = 1

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile _
    ("\\Path_To_ServerList\servers.txt", ForReading)

strText = objTextFile.ReadAll
objTextFile.Close

arrComputers = Split(strText, vbCrLf)

For Each strComputer in arrComputers
    	'Wscript.Echo strComputer
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colSMBIOS = objWMIService.ExecQuery _
("Select * from Win32_SystemEnclosure")
For Each objSMBIOS in colSMBIOS
'Wscript.Echo "Dell Service Tag: " & objSMBIOS.SerialNumber
Set objLogFile = objFSO.CreateTextFile(svcTag_LOG, 2)
objLogFile.WriteLine ("Dell Service Tag for " & strComputer & " is " & objSMBIOS.SerialNumber)
Next
Next

Open in new window

0
 
LVL 82

Expert Comment

by:leakim971
ID: 37714996
Thanks a lot! Work great!
0
 

Expert Comment

by:Mad Atterz
ID: 41477014
Thanks, that works a treat. Is there a way of also reporting who the current logged on user is aswell?
0

Featured Post

Industry Leaders: 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!

Question has a verified solution.

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

Use this article to create a batch file to backup a Microsoft SQL Server database to a Windows folder.  The folder can be on the local hard drive or on a network share.  This batch file will query the SQL server to get the current date & time and wi…
This article provides a convenient collection of links to Microsoft provided Security Patches for operating systems that have reached their End of Life support cycle. Included operating systems covered by this article are Windows XP,  Windows Server…
This tutorial will give a an overview on how to deploy remote agents in Backup Exec 2012 to new servers. Click on the Backup Exec button in the upper left corner. From here, are global settings for the application such as connecting to a remote Back…
This tutorial will walk an individual through configuring a drive on a Windows Server 2008 to perform shadow copies in order to quickly recover deleted files and folders. Click on Start and then select Computer to view the available drives on the se…

719 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