C# 服务使用 Process 调用程序,在VS里面成功,部署到IIS里面后调用失败,为什么?
代码如下:
public static void CreateProcess(InputArgument args, string[] commandParams)
{
try
{
ProcessStartInfo startInfo = new()
{
FileName = @"C:\Program Files\Autodesk\AutoCAD 2022\accoreconsole.exe",
Arguments = " /l zh-CN ",
UseShellExecute = false,
CreateNoWindow = true,
RedirectStandardInput = true // 重定向标准输入流
};
using Process process = new();
process.StartInfo = startInfo;
process.Start();
foreach (string command in commandParams)
{
process.StandardInput.WriteLine(command);
}
process.StandardInput.WriteLine(args.ToBase64String());
process.StandardInput.WriteLine("quit"); // 发送退出命令
process.WaitForExit(); // 等待外部程序退出
if (process.ExitCode != 0)
{
LogHelper.SetErrorLog("创建图纸插件进程启动失败");
}
}
catch (Exception ex)
{
LogHelper.SetErrorLog("插件创建文件失败:" + ex.Message);
}
}