Note: while path and filename inputs of all Actions of Automation Workshop are handled automatically, Run DOS / Cmd Command Action requires the use of double quotes when specifying the command line (in a similar manner as double quotes are used in the Windows command prompt itself).
Since introduction of long filename (LFN) support, it became possible to use not only file names longer than 8 characters, but also many of previously disallowed characters. Being a progressive shift and allowing much better organization of files and folders, long file names also posed some challenges. For example, previously disallowed space character which was used exclusively as a separator character now is allowed as a part of file name. Which in turn requires a different method of separation between file names and parameters.
Now, whenever, a file name or path contains space characters, it is necessary to use double quotes to delimit file names (as well as command line parameters when they contain space characters). The use of quotes is optional in cases when no space characters are involved.
Run DOS / Cmd Command Action automatically adds double quotes to file name input (e.g. when the browse button is used). However, there are essential situations when deciphering the intended syntax is not even remotely possible; e.g. invoking a command in command line (using the Run DOS / Cmd Command Action). Due to very design of file naming schemes and their processing, it is not possible to automatically deal with ambiguities inherent in command line specifications.
C:\test case\my file.batthat could potentially be delimited as any one of these:
"C:\test" "case\my" "file.bat"- runs
"C:\test" "case\my file.bat"- runs
"C:\test case\my" "file.bat"- runs
C:\test case\with parameter
"C:\test case\my file.bat"- runs
my file.batlocated in
C:\test case\without parameters
It is evident, thus, that a correct specification of parameters requires a necessary disambiguation of the command line input by quote delimiting the elements appropriately. Even more, such disambiguation can not be accomplished automatically on the basis of formal processing of command line input.
If you have any questions, please do not hesitate to contact our support team.