我有一个 .exe
文件需要在创建文件后运行。该文件已成功创建,之后我使用以下代码运行 .exe
文件:
ProcessStartInfo processInfo = new ProcessStartInfo();
processInfo.FileName = pathToMyExe;
processInfo.ErrorDialog = true;
processInfo.UseShellExecute = false;
processInfo.RedirectStandardOutput = true;
processInfo.RedirectStandardError = true;
Process proc = Process.Start(processInfo);
我也尝试了一个简单的 Process.Start(pathToMyExe);
但 .exe
文件没有运行。当我在我的 Windows Explorer 上手动尝试 pathToMyExe
时,程序正确运行。但不是通过程序。我看到的是光标转向等待几秒钟然后恢复正常。所以也没有抛出异常。什么阻止了文件?
最佳答案
您没有设置工作目录路径,并且与通过资源管理器启动应用程序时不同,它不会自动设置为可执行文件的位置。
只需做这样的事情:
processInfo.WorkingDirectory = Path.GetDirectoryName(pathToMyExe);
(假设输入文件、DLL 等在该目录中)
关于c# - Process.Start() 不启动 .exe 文件(手动运行时有效),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31648927/