The command slot of a process can contain either a string or a sequence of strings. In the first case, the string is processed in an operating system-specific manner. In the second case, the first element is a program name and the remaining elements are passed to the program as command-line arguments.
On Windows, sequence commands naming a .bat or .cmd file use batch-specific escaping, with AutoRun and delayed expansion disabled. Batch arguments cannot contain NUL, carriage return or newline characters, and encoded batch command lines cannot exceed 8191 UTF-16 code units. Other sequence commands use native executable quoting and cannot contain NUL characters.
Warning String commands are raw command lines. Do not interpolate untrusted data into them, or into commands explicitly invoking a shell such as cmd.exe /c. Use a sequence command instead. Batch scripts may themselves reinterpret arguments; the launcher cannot secure unsafe code inside a script.