C#Winforms应用程序打开第二个Winforms应用程序

C#Winforms应用程序打开第二个Winforms应用程序,c#,winforms,C#,Winforms,我有一个我写的小应用程序,需要使用/合并到大约6个较大的部分中。理想情况下,我希望能够从每个独立应用程序打开这个较小的部分,而不是向每个应用程序添加代码。这将允许在一个应用程序中发生更改时更容易维护 我已经看过了,但似乎不知道如何从一个winform应用程序内部打开第二个winform应用程序。任何帮助都会很好 谢谢我希望将此库作为一个单独的项目,您可以添加对其他项目的引用。比生成子进程干净得多。2个选项 1) 如果这个小应用程序可以独立运行,这意味着它可以以某种有用的方式执行,而不必由父应用程

我有一个我写的小应用程序,需要使用/合并到大约6个较大的部分中。理想情况下,我希望能够从每个独立应用程序打开这个较小的部分,而不是向每个应用程序添加代码。这将允许在一个应用程序中发生更改时更容易维护

我已经看过了,但似乎不知道如何从一个winform应用程序内部打开第二个winform应用程序。任何帮助都会很好


谢谢

我希望将此库作为一个单独的项目,您可以添加对其他项目的引用。比生成子进程干净得多。

2个选项

1) 如果这个小应用程序可以独立运行,这意味着它可以以某种有用的方式执行,而不必由父应用程序派生,那么请使用
Process.Start()
。生成此进程的应用程序可能无法在部分信任环境中运行

Process.Start("notepad.exe");

2)如果应用程序仅在父应用程序的上下文中使用,例如通过从其他应用程序中得到对象或其他参数,考虑重构小应用程序,以允许父应用程序引用表单的项目。然后,您的父应用程序只需创建表单的新实例并显示它:

var childForm = new SmallAppForm();
childForm.Owner = this; //the child window will close when its owner does.
childForm.Show();
虽然它的代码更多,但通常更容易实现,也更简单。表单也可以从应用程序中的其他地方访问和控制,也可以实现其他功能,而无需处理相当混乱的跨流程通信业务。

process.Start: