[英]C# Process.Start: Whitespace Not Working Even Quoted
我得到了什么:
Process.Start("cmd.exe", "/K \\"C:/Program Files/nodejs/node.exe\\" \\"C:/rc/rainingchain/app.js\\"");
即使我用“轉義”包裝文件名,它仍然顯示錯誤:
'C:/Program' is not recognized as an internal or external command, operable program or batch file.
怎么了?
您需要在程序路徑中使用兩個“空格:
Process.Start("cmd.exe", "/K \"\"C:/Program Files/nodejs/node.exe\" \"C:/rc/rainingchain/app.js\"\"");
您的代碼將被翻譯為
cmd.exe /K "C:/Program Files/nodejs/node.exe" "C:/rc/rainingchain/app.js"
cmd.exe會將其翻譯為
C:/Program Files/nodejs/node.exe" "C:/rc/rainingchain/app.js
這就是為什么它抱怨錯誤。
你需要的是再次用雙引號括起整個node.exe命令。
Process.Start("cmd.exe", "/K \\"\\"C:/Program Files/nodejs/node.exe\\" \\"C:/rc/rainingchain/app.js\\"\\"");
所以node.exe命令將是"C:/Program Files/nodejs/node.exe" "C:/rc/rainingchain/app.js"
順便說一下,為什么不直接調用node.exe?
Process.Start("C:/Program Files/nodejs/node.exe", "C:/rc/rainingchain/app.js");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.