gpt4 book ai didi

c# - 无法使用 C# 代码运行 .exe 应用程序

转载 作者:太空狗 更新时间:2023-10-30 01:27:36 25 4
gpt4 key购买 nike

我有一个 exe,我需要使用两个参数(PracticeId、ClaimId)从我的 C# 程序调用

例如:假设我有一个应用程序 test.exe,其功能是根据给定的两个参数进行声明。

在 cmd 上,我通常会给出以下命令:

test.exe 1 2

它工作正常并执行其转换工作。

但我想使用我的 C# 代码执行相同的操作。我正在使用以下示例代码:

Process compiler = new Process();
compiler.StartInfo.FileName = "test.exe" ;
compiler.StartInfo.Arguments = "1 2" ;
compiler.StartInfo.UseShellExecute = true;
compiler.StartInfo.RedirectStandardOutput = true;
compiler.Start();

当我尝试使用上述代码调用 test.exe 时,它无法执行创建 claim txt 文件的操作。

这是哪里的问题?不知道是不是线程的问题。

有人可以告诉我上面的代码需要更改什么吗?

最佳答案

您提供的代码在我运行时失败并出现以下错误:

System.InvalidOperationException

The Process object must have the UseShellExecute property set to false in order to redirect IO streams.

以下代码正确执行并传递参数:

var compiler = new Process();
compiler.StartInfo.FileName = "test.exe";
compiler.StartInfo.Arguments = "1 2";
compiler.StartInfo.UseShellExecute = true;
compiler.StartInfo.RedirectStandardOutput = false;
compiler.Start();

关于c# - 无法使用 C# 代码运行 .exe 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2550434/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com