控制台应用程序从文本框 WinForms (C#) 读取路径

Console Application reading path from textbox WinForms (C#)

我有一个控制台应用程序可以将 .txt 文件转换为 .xml 文件。我制作了一个 WinForms 应用程序来制作菜单,select 一个控制台应用程序和 运行 它。用户可以通过浏览按钮选择输入文件的路径,并将路径作为字符串插入到一些文本框中。现在我想让控制台应用程序读取他们所说的内容,以便它可以找到输入文件。 有什么办法吗?

从您的 winform 应用程序,您可以启动另一个进程(可能通过传递您正在谈论的控制台应用程序的 exe 路径和相关的 i/p 字符串类型参数,这基本上是用户提供的文本文件的路径)

This link 可能会帮助你做到这一点。

只需使用一个进程,就可以很容易地从 WinForms 应用程序启动控制台应用程序。示例:

Process.Start("myConsoleApp.exe", "some arguments");

但是,只有当控制台应用程序不是您自己的代码时,这才有意义。或者,如果它是您自己的代码,但它是从不同 UI 或方法调用的通用应用程序。

如果上述 none 是这种情况(这似乎是您的情况),则将 UI 和功能合并到一个应用程序中更有意义。您希望菜单成为调用不同应用程序的通用应用程序,因此只需删除与控制台应用程序相关的 UI,使其成为一个单独的 WinForms 应用程序,然后将来自控制台应用程序的代码添加到其中。现在,您的菜单应用程序将简单地调用一个具有 UI 和功能的 WinForms 应用程序。您将使用与上面相同的方法,但您可能不需要传递任何参数:

Process.Start("myWinformsApp.exe");