Solved

Need to modify a working VBScript to use variables

Posted on 2014-09-26
3
151 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

Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

Question has a verified solution.

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

In this article we want to have a look at the directory attributes which are used by Microsoft to store the so called Security Identifiers (SID). These SIDs plays an important role in delegating and granting permissions and in authentication of trus…
This article is the result of a quest to better understand Task Scheduler 2.0 and all the newer objects available in vbscript in this version over  the limited options we had scripting in Task Scheduler 1.0.  As I started my journey of knowledge I f…
In a recent question (https://www.experts-exchange.com/questions/29004105/Run-AutoHotkey-script-directly-from-Notepad.html) here at Experts Exchange, a member asked how to run an AutoHotkey script (.AHK) directly from Notepad++ (aka NPP). This video…

809 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