Discussion forum for all Windows batch related topics.
Moderator: DosItHelp
-
Dennis de Reus
- Posts: 4
- Joined: 13 Feb 2017 07:47
#1
Post
by Dennis de Reus » 13 Feb 2017 07:56
Dear Form members,
I made a scipt file for thats make a bat file automatic to exe.
My question is: The file that I dragged to this script has a name and that name must be automatic fill in at -bat and -save.
Example: the file is called test.bat than must -bat and -exe know that the file called test.
Code: Select all
D:\xavef\Google Drive\Handige programma's\Bat To Exe Converter\Bat_To_Exe_Converter_(x64).exe" -bat "airline tycoon deluxe.bat" -save "airline tycoon deluxe.exe" -admin -upx
I hope that you can help me whit it.
thank you in advance
Kind reagards,
Dennis
Last edited by
Dennis de Reus on 13 Feb 2017 08:28, edited 1 time in total.
-
Squashman
- Expert
- Posts: 4486
- Joined: 23 Dec 2011 13:59
#2
Post
by Squashman » 13 Feb 2017 08:00
Do you have a specific question?
Looks like you have mismatched sets of quotes.
-
Dennis de Reus
- Posts: 4
- Joined: 13 Feb 2017 07:47
#3
Post
by Dennis de Reus » 13 Feb 2017 08:31
Squashman wrote:Do you have a specific question?
Looks like you have mismatched sets of quotes.
I have change my question i hope that it is now better and i didn't want toe delete it but i thought my question disapear
-
Squashman
- Expert
- Posts: 4486
- Joined: 23 Dec 2011 13:59
#4
Post
by Squashman » 13 Feb 2017 08:37
Now you are missing a quote at the beginning of your code.
What you want to do is reference the command line arguments. In batch files these are referenced as %0 to %9 with %0 initially being the batch file name and %1 being the first cmd line argument.
This is all explained in the help for the CALL command. You can type call /? at the cmd prompt to get help. But here is the part you are looking for.
Code: Select all
In addition, expansion of batch script argument references (%0, %1,
etc.) have been changed as follows:
%* in a batch script refers to all the arguments (e.g. %1 %2 %3
%4 %5 ...)
Substitution of batch parameters (%n) has been enhanced. You can
now use the following optional syntax:
%~1 - expands %1 removing any surrounding quotes (")
%~f1 - expands %1 to a fully qualified path name
%~d1 - expands %1 to a drive letter only
%~p1 - expands %1 to a path only
%~n1 - expands %1 to a file name only
%~x1 - expands %1 to a file extension only
%~s1 - expanded path contains short names only
%~a1 - expands %1 to file attributes
%~t1 - expands %1 to date/time of file
%~z1 - expands %1 to size of file
%~$PATH:1 - searches the directories listed in the PATH
environment variable and expands %1 to the fully
qualified name of the first one found. If the
environment variable name is not defined or the
file is not found by the search, then this
modifier expands to the empty string
The modifiers can be combined to get compound results:
%~dp1 - expands %1 to a drive letter and path only
%~nx1 - expands %1 to a file name and extension only
%~dp$PATH:1 - searches the directories listed in the PATH
environment variable for %1 and expands to the
drive letter and path of the first one found.
%~ftza1 - expands %1 to a DIR like output line
In the above examples %1 and PATH can be replaced by other
valid values. The %~ syntax is terminated by a valid argument
number. The %~ modifiers may not be used with %*
-
Dennis de Reus
- Posts: 4
- Joined: 13 Feb 2017 07:47
#5
Post
by Dennis de Reus » 14 Feb 2017 07:18
Yes it worked.
Thanks for helping me.
It was easier that i thoght. My English is not so good, I didn't understood your story.
I think this topic can close.
Squashman wrote:Now you are missing a quote at the beginning of your code.
What you want to do is reference the command line arguments. In batch files these are referenced as %0 to %9 with %0 initially being the batch file name and %1 being the first cmd line argument.
This is all explained in the help for the CALL command. You can type call /? at the cmd prompt to get help. But here is the part you are looking for.
Code: Select all
In addition, expansion of batch script argument references (%0, %1,
etc.) have been changed as follows:
%* in a batch script refers to all the arguments (e.g. %1 %2 %3
%4 %5 ...)
Substitution of batch parameters (%n) has been enhanced. You can
now use the following optional syntax:
%~1 - expands %1 removing any surrounding quotes (")
%~f1 - expands %1 to a fully qualified path name
%~d1 - expands %1 to a drive letter only
%~p1 - expands %1 to a path only
%~n1 - expands %1 to a file name only
%~x1 - expands %1 to a file extension only
%~s1 - expanded path contains short names only
%~a1 - expands %1 to file attributes
%~t1 - expands %1 to date/time of file
%~z1 - expands %1 to size of file
%~$PATH:1 - searches the directories listed in the PATH
environment variable and expands %1 to the fully
qualified name of the first one found. If the
environment variable name is not defined or the
file is not found by the search, then this
modifier expands to the empty string
The modifiers can be combined to get compound results:
%~dp1 - expands %1 to a drive letter and path only
%~nx1 - expands %1 to a file name and extension only
%~dp$PATH:1 - searches the directories listed in the PATH
environment variable for %1 and expands to the
drive letter and path of the first one found.
%~ftza1 - expands %1 to a DIR like output line
In the above examples %1 and PATH can be replaced by other
valid values. The %~ syntax is terminated by a valid argument
number. The %~ modifiers may not be used with %*
-
Dennis de Reus
- Posts: 4
- Joined: 13 Feb 2017 07:47
#6
Post
by Dennis de Reus » 06 Mar 2017 06:34
Dear Form members,
Now I tried to dragged more files than 1 file but than do the script only the script only 1 file.
My question is: Is it possible that the script do all file I dragged at once?
I hope that you can help me with it.
thank you in advance
Kind reagards,
Dennis