-4

使用在服务器中运行的这段代码 .exe

string bat =null;
bat = "D:/folder/a.bat";
System.Diagnostics.Process.Start(bat);

错误:找不到指定的文件。

谁可以帮我这个事。

4

5 回答 5

1

Windows 中的文件路径不带正斜杠,它不是 URL/URI。使用反斜杠。

如果程序可以访问 bat 文件,则以下任何人都应该工作。

string bat=@"D:\folder\a.bat";

或者

string bat="D:\\folder\\a.bat";

此外,检查 bat 文件的存在将是一个很好的做法:

if(File.Exists(bat))
{
    System.Diagnostics.Process.Start(bat);
}
于 2013-01-24T14:56:49.383 回答
1
  1. 确保文件确实位于该路径。
  2. 确保您的程序可以访问此路径。
  3. 使用反斜杠:bat = @"D:\folder\a.bat";
于 2013-01-24T14:28:52.543 回答
0

将斜杠更改为反斜杠:

bat = "D:\\folder\\a.bat";
于 2013-01-24T14:29:00.007 回答
0

通常,您需要运行一个可执行文件(如 cmd.exe),然后向其传递一个参数。cmd.exe 具体有两个选项 /C(执行字符串指定的命令,然后终止)和 /K(执行字符串指定的命令但保持打开状态)

于 2013-01-24T14:29:24.237 回答
0

错误的路径。尝试

bat = @"D:\folder\a.bat";
于 2013-01-24T14:29:28.063 回答