Solved

Need to modify a working VBScript to use variables

Posted on 2014-09-26
3
152 Views
Last Modified: 2014-09-26
Hello again everyone,

RobSamson was kind enough to author a VScript for me.
It works great and I am very pleased.

Here's what the short script looks like:
Set objShell = CreateObject("WScript.Shell")
strCommand = "cmd /c C:\BETASys\exf.exe  -c ""C:\BETASys\BETASys.md5"" > ""%USERPROFILE%\AppData\Local\Test\Intergrity_check_results.txt"""
objShell.Run strCommand, 1, True

Now, I should like to request a bit of help modifying RobSamson's work some. (If I might.)

The current script has three parameters:
The first parameter is the location and name of an executable that I want to run:
C:\BETASys\exf.exe  
The second parameter is the location and name of an input file, that the executble in the first parameter will use:
-c ""C:\BETASys\BETASys.md5
And the thrid parameter, is where to send the output when the executable defined in the first parameter is run.
> ""%USERPROFILE%\AppData\Local\Test\Intergrity_check_results.txt"""

Now for my issue:
The folder locations for the first two parameters could be different each time I run this script.

What I would like to do (if it makes sense) is ....
Early in the script, I will populate a variable with what I want the first parameter to look like.
And I'll do the same for the second parameter.
I have some VBScript skills and I can do this.

Assuming the first variable is named "var1" and the second, is named "var2", how would I use var1 and var2, in the current line of strCommand = "cmd /c C:\BETASys\exf.exe  -c ""C:\BETASys\BETASys.md5"" > ""%USERPROFILE%\AppData\Local\Test\Intergrity_check_results.txt""" ?

Does that makes sense ?
........
........
Yes.
Yes, I think it does.

Thank so very much for any replies.

Good morning.
0
Comment
  • 2
3 Comments
 
LVL 67

Accepted Solution

by:
sirbounty earned 500 total points
ID: 40346239
Try this:

Set objShell = CreateObject("WScript.Shell")
var1 = "C:\BETASys\BETASys.md5"
var2 = "%USERPROFILE%\AppData\Local\Test\Intergrity_check_results.txt"
strCommand = "cmd /c C:\BETASys\exf.exe  -c " & chr(34) & var1 & chr(34) & " > " & chr(34) & var2 & chr(34) 
objShell.Run strCommand, 1, True

Open in new window

0
 
LVL 1
ID: 40346408
And this worked perfectly.

You are the greatest !
0
 
LVL 67

Expert Comment

by:sirbounty
ID: 40346627
Happy to help.  Thanks for the grade. :^)
0

Featured Post

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!

Question has a verified solution.

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

Recently I finished a vbscript that I thought I'd share.  It uses a text file with a list of server names to loop through and get various status reports, then writes them all into an Excel file.  Originally it was put together for our Altiris server…
Hello again, all.  For those of you that have been following along, you'll know that this is my third article on this topic (though it is not Part III).  This article is sort of remedial, and probably the topic with which I should have started the s…
Nobody understands Phishing better than an anti-spam company. That’s why we are providing Phishing Awareness Training to our customers. According to a report by Verizon, only 3% of targeted users report malicious emails to management. With compan…

713 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