加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – Process.Start()无法正常工作

发布时间:2020-12-15 08:41:04 所属栏目:百科 来源:网络整理
导读:我有程序pro1.exe从输入文件读取,计算结果并将其写入输出文件. 现在我正在编写程序test.exe,在不同的测试中测试它(填充输入,使用Process.Start()运行pro1并将输出与假设进行比较) 问题如下:执行pro1.exe后输出文件为空.但是,如果我手动运行它,它会写入输出
我有程序pro1.exe从输入文件读取,计算结果并将其写入输出文件.
现在我正在编写程序test.exe,在不同的测试中测试它(填充输入,使用Process.Start()运行pro1并将输出与假设进行比较)

问题如下:执行pro1.exe后输出文件为空.但是,如果我手动运行它,它会写入输出文件.

这是代码我如何执行pro1:

ProcessStartInfo processInfo = new ProcessStartInfo();
    processInfo.FileName = _applicationName;
    processInfo.ErrorDialog = true;
    processInfo.UseShellExecute = false;
    processInfo.RedirectStandardOutput = true;
    processInfo.RedirectStandardError = true;

    Process proc = Process.Start(processInfo);

_applicationName是exe文件的完整路径.

在调试中我看到,该进程正在启动,并以无错误结束.

解决方法

这通常是由于具有不同的 WorkingDirectory引起的.您可能需要设置WorkingDirectory属性以匹配可执行文件的路径.

如果没有这个,当UseShellExecute == false时,工作目录可能不是应用程序的本地路径.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读