我有两个C# Winform (.NET 4.0)表单,每个都在单独但类似的自动化任务中持续运行。这些表单是不同的进程/工作流程,但在项目中操作方式相似,可以共享相同的资源(方法、数据模型、程序集等)。
这两个表单已经完成,但现在我不确定如何运行程序,使每个窗口在启动时打开并独立运行。该程序将在部署时一直运行。
这可能看起来有点基础,但我大部分的开发经验是Web应用程序。线程等还有点陌生。我已经进行了研究,但我找到的大多数答案都与用户交互和顺序使用情况有关——这将只是连续运行两个不同进程的一个系统,并需要与外界独立交互。
我发现的潜在解决方案可能涉及多线程,或者可能是某种MDI,或者一些人建议DockPanelSuite(尽管在超级公司环境中,下载第三方文件比说起来容易)。
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
// Rather than specifying frmOne or frmTwo,
// load both winforms and keep them running.
Application.Run(new frmOne());
}
}