Clearing a variable in a VBS script.

I plagiarized er, researched this script and it works extremely well except for a problem of reporting the wrong serial number (duplicate)

It creates a CSV text file with two items.

computername,serialnumber

However if a computer isn't going to give me a serial number for any reason it shows the serial number of the previous computer. (it isn't clearing the variable, basically because I don't know how to do that)

Sample output.
computer1,serial1
computer2,serial1
computer3,serial1
computer4,serial4

I've played around with moving the clear variable around, but only succeeded in changing where the error message comes up.

Should I instead persue using a different variable to keep track of the last one and clear it if it's the same?

Hoping I'm just not doing it right,

Chad Helton

On Error Resume Next
set WshShell = WScript.CreateObject("WScript.Shell")
 
'file output
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile("C:\Documents and Settings\user\Desktop\serial.txt", True)
 
 
Computers = Array("comp1","comp2","comp3","comp4")
For Each Computer in Computers
winmgmt1 = "winmgmts:{impersonationLevel=impersonate}!//"& Computer &""
'WScript.Echo winmgmt1
Set SNSet = GetObject( winmgmt1 ).InstancesOf ("Win32_BIOS")
for each SN in SNSet
REM	MsgBox "The serial number for the specified computer is: " & Computer & SN.SerialNumber
 
REM a.Writeline (Computer)&","& (SN.SerialNumber)
MsgBox "The serial number for the specified computer is: " & Computer & SN.SerialNumber
 
REM THIS IS WHERE I'VE BEEN PLAYING WITH CLEARING VARIABLES 
SN.SerialNumber = ""
MsgBox "TEST COMPUTER SN" & Computer & SN.SerialNumber
Next
Next

Open in new window

TechniMemphisAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
ysfxConnect With a Mentor Commented:
Try inserting before line 13
Set SNSet = nothing

What is the error message you are getting?
0
 
TechniMemphisAuthor Commented:
I inserted your line where you asked and it simply skipped over the non-responding computer (I put in a known turned off computername and a computer I'm not an admin on for controls)

Okay, I can't duplicate my original error, but your script worked like a charm. (read: busy with other stuff and can't get back to it)

Take the points and my thanks and run while I scratch my head to figure out what I did earlier?

Thanks!!

Chad

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.