我有一个控制台应用程序,将通过计划程序启动。如果由于某种原因,该文件的某部分无法构建,则需要一个GUI前端,以便我们可以在第二天使用特定的输入运行它。
是否有一种方法可以传递参数到应用程序入口点,以根据传递的参数启动控制台应用程序或GUI应用程序?
是否有一种方法可以传递参数到应用程序入口点,以根据传递的参数启动控制台应用程序或GUI应用程序?
我认为Philip是正确的。虽然我在一个广泛部署的商业应用程序中一直使用“混合”方法而没有问题。但我确实遇到了一些“混合”代码的问题,所以最终我修复了它们并重新发布了解决方案。
所以请放心使用它。它实际上非常容易使用。混合系统在Google Code上,并更新了这种技术的旧CodeGuru解决方案,并提供源代码和工作示例二进制文件。
前往主方法(Program.cs)。在那里放置您的逻辑,并确定要执行什么,以及有条件地执行Application.Run()。
解决这个问题的一个方法是让控制台应用程序编写GUI应用程序的配置文件(WinForms最简单)。
我喜欢混合方法,命令行开关似乎是多余的。
可能更简单的方法是使用相同引擎的两个应用程序来实现共同功能。可以这样考虑,控制台应用程序是供计算机使用的,而GUI应用程序是供人类使用的。由于CLI应用程序将首先执行,因此它可以通过配置文件向GUI应用程序传递数据。
其中一个好处是处理引擎的接口会更简洁,因此未来更容易维护。
这将是最简单的方法,因为配置文件机制很容易获得,您不必编写大量格式化和解析例程。
如果您不想使用配置机制,则可以直接将JSON或XML序列化写入文件以轻松传输数据。