设置命令行引用参数

发布于 2025-01-01 11:13:05 字数 312 浏览 2 评论 0原文

我需要从我的应用程序启动命令提示符并为其设置参数。

System.Diagnostics.Process.Start("CMD.exe", "\"C:\Program Files\My Program\program.exe\" \"C:\Program Files\My Program\Program2.exe\"");

上面的行对我有好处,但他的问题是引号。要在 cmd 中包含引号,我需要转义它们,但是当我转义它们时,我在命令中得到转义符号 \ ,所以它不起作用。
任何人都有想法,如何解决这个问题?

I need to launch command prompt from my application and set arguments for it.

System.Diagnostics.Process.Start("CMD.exe", "\"C:\Program Files\My Program\program.exe\" \"C:\Program Files\My Program\Program2.exe\"");

The line abowe would be good for me, but he problem is quotes. To have quotes in cmd i need to escape them, but when i escape them, i get escape symbols \ in my command, so it doesnt work.
Anybody has an idea, how to solve this problem?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

黎夕旧梦 2025-01-08 11:13:05
const string SystemDirectory = @"C:\Windows\System32";

带引号:

const string SystemDirectory = @"""C:\Windows\System32""";
const string SystemDirectory = @"C:\Windows\System32";

With quoutes:

const string SystemDirectory = @"""C:\Windows\System32""";
二智少女猫性小仙女 2025-01-08 11:13:05

您的代码应如下所示:

Process.Start("CMD.exe",
              "\"C:\\Program Files\\My Program\\program.exe\" " +
              "\"C:\\Program Files\\My Program\\Program2.exe\"");

请注意路径中的双反斜杠。

另一种方法是使用逐字字符串(请注意字符串前面的 @ 符号)。在这种情况下,您需要将引号转义为两个引号:

Process.Start("CMD.exe",
              @"""C:\Program Files\My Program\program.exe"" " +
              @"""C:\Program Files\My Program\Program2.exe""");

Your code should look like this:

Process.Start("CMD.exe",
              "\"C:\\Program Files\\My Program\\program.exe\" " +
              "\"C:\\Program Files\\My Program\\Program2.exe\"");

Note the double backslashes in the path.

An alternative would be to use a verbatim string (Note the @ sign in front of the string). In that case you need to escape the quotes as two quotes:

Process.Start("CMD.exe",
              @"""C:\Program Files\My Program\program.exe"" " +
              @"""C:\Program Files\My Program\Program2.exe""");
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文