我有批处理文件:sample.bat,代码如下:
@ECHO OFF
SET /a INT1=%1
SET /a INT2=%2
SET /a ANSWER=INT1*INT2
ECHO %ANSWER%
PAUSE
还创建了另一个批处理文件:cmdSample.bat
使用以下代码:
样品 2 4
所以如果我运行 cmdSample.bat 文件,它会给我正确的结果。
之后,我创建了 1 个 Windows 服务应用程序,在其中我尝试调用该批处理文件并传递命令,如下所示:
private void DoWork()
{
try
{
string fname = @"C:\Users\of4\Desktop\sample.bat";
string cmd = "sample 2 4";
RunSampleBatch(fname, cmd);
}
}
private void RunSampleBatch(string fname, string cmd)
{
Process p = new Process();
p.StartInfo.FileName = fname;
p.StartInfo.Arguments = cmd;
p.Start();
}
谁能帮助我,为什么我无法通过 Windows 服务应用程序执行批处理文件?
提前致谢..