How to call a program that contains space in filename?
All filenames and paths which contain spaces must be quoted.
Next, regarding your question, how about stating the path like:
start /max /d"C:\Program files\foo\" ba.exe -somearguments
The error happened because the system interpreted your command as the file C:\Program
and file
as an argument of your command. Obviously it doesn't find the file Program
and returned this error.
To fix it, just include ""
on the path between the words with the space character or on entire path:
start /max C:\"Program files"\foo\ba.exe -somearguments
or
start /max "C:\Program files\foo\ba.exe" -somearguments
Although wrapping the path in quotes is the easiest and clearest to read, you can also use the old DOS short names (since DOS followed 8.3 naming, file names longer than 8 characters were truncated with ~1
) for files. These names do not have spaces. You can see the short names for files with the DIR /X
command.