c# 转义字符试图 运行 命令
c# escaping chars trying to run command
我正在尝试 运行 这个带有几个引号的命令:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --proxy-server="10.10.10.10:9999" -user-data-dir=C:\filterbypass www.example.com"
我试过在 C 之前和 com 之后添加反斜杠,没有成功
尝试将其分配给字符串
string \"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --proxy-server="10.10.10.10:9999" -user-data-dir=C:\filterbypass www.example.com\"
希望 运行 这样的命令,但仍然没有。
try
{
System.Diagnostics.Process.Start(@"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --proxy-server="10.10.10.10:9999" -user-data-dir=C:\filterbypass www.example.com");
}
catch { }
谁能告诉我哪里出错了?谢谢,
您需要将 运行 的二进制文件与参数分开。我建议使用 ProcessStartInfo
来使这一点更清楚:
var info = new ProcessStartInfo
{
FileName = @"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe",
Arguments = "--proxy-server=10.10.10.10:9999 " +
@"--user-data-dir=C:\filterbypass " +
"www.example.com"
};
var process = Process.Start(info);
(请注意 --
用于 user-data-dir
开关,顺便说一下 - 看起来所有命令行标志都以 --
为前缀,而不是 -
. 有可能是双向的...)
我正在尝试 运行 这个带有几个引号的命令:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --proxy-server="10.10.10.10:9999" -user-data-dir=C:\filterbypass www.example.com"
我试过在 C 之前和 com 之后添加反斜杠,没有成功
尝试将其分配给字符串
string \"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --proxy-server="10.10.10.10:9999" -user-data-dir=C:\filterbypass www.example.com\"
希望 运行 这样的命令,但仍然没有。
try
{
System.Diagnostics.Process.Start(@"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --proxy-server="10.10.10.10:9999" -user-data-dir=C:\filterbypass www.example.com");
}
catch { }
谁能告诉我哪里出错了?谢谢,
您需要将 运行 的二进制文件与参数分开。我建议使用 ProcessStartInfo
来使这一点更清楚:
var info = new ProcessStartInfo
{
FileName = @"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe",
Arguments = "--proxy-server=10.10.10.10:9999 " +
@"--user-data-dir=C:\filterbypass " +
"www.example.com"
};
var process = Process.Start(info);
(请注意 --
用于 user-data-dir
开关,顺便说一下 - 看起来所有命令行标志都以 --
为前缀,而不是 -
. 有可能是双向的...)