c# - 如何在 C# 中使用参数启动 .exe 文件?

标签 c#

我需要从我的 C# 应用程序启动一个 exe 文件。

查询字符串应如下所示:

Extractor.exe "base\sql" "develop" "..\Data\System" "Grids"

这是我的代码:

public static void StartExtractor()
{
    System.Diagnostics.Process process = new System.Diagnostics.Process();
    process.StartInfo.FileName = OurFields.keskullPass + @"\Extractor.Deploy\Extractor.exe";
    process.StartInfo.Arguments = "\"base\\sql\" \"develop\" \"..\\Data\\System\" \"Grids\"";
    process.Start();
    process.WaitForExit();
}

最佳答案

在 C# 中使用参数启动进程的简单方法:

Process.Start("yourapp.exe", "your arguments");

如果你确实需要等待进程退出,那么它就会变成:

var process = Process.Start("yourapp.exe", "your arguments");

process.WaitForExit();

通常您不会手动创建 Process 对象。

进程在System.Diagnostics中定义,因此您还需要将其添加到您的using子句中。


您的问题可能与外部应用程序对参数格式的特定期望有关,或者与 exe 完整路径的连接错误有关。

要引用参数,您可以像以前一样手动执行,或者使用类似的例程:How to correctly escape command line arguments in c#


有关如何启动进程的更多示例:

关于c# - 如何在 C# 中使用参数启动 .exe 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35111168/

相关文章:

c# - 如何使用 Fluent Assertions 来测试不等式测试中的异常?

c# - 在 ASP.NET 样板中为应用程序服务配置审计日志记录

c# - 您可以使用接口(interface)来创建接口(interface)的 const 和非 const 版本吗?

c# - 在 c# 中,当向方法发送参数时,我们应该什么时候使用 "ref"什么时候使用 "out"以及什么时候不使用它们?

c# - Unity 处理多个具有不同目的的碰撞器

c# - 使用 javascript 更改旧日期的文本颜色

c# - 类型或命名空间定义,或具有相同数量括号的文件结束预期错误

c# - 如何在 C# 的 getter 和 setter 方法中进行验证?

c# - FluentAssertions 类型检查

c# - datagridview即使没有数据c#也可见网格线