Похоже, у вас есть несколько существующих приложений Windows Forms, которые компилируются в exe. Вы по-прежнему хотите иметь возможность запускать эти exe-файлы независимо, а также запускать их биты из главного приложения (например, из приложения запуска).
Вы можете создать решение с несколькими приложениями «Windows Forms», а затем создать мастер, который ссылается на другие проекты. Для этого щелкните правой кнопкой мыши раздел «Ссылки» и добавьте ссылку. Затем выберите Solution => Projects и отметьте другие исполняемые проекты в решении.
using System;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btnApp1_Click(object sender, EventArgs e)
{
var f = new WindowsFormsApplication2.Form1();
f.ShowDialog();
}
private void btnApp2_Click(object sender, EventArgs e)
{
var f = new WindowsFormsApplication3.Form1();
f.ShowDialog();
}
}
}
В результате появится каталог bin, содержащий все исполняемые файлы.
То, что это возможно, не означает, что это отличная идея. Возможно, вы захотите вместо этого изменить «Тип вывода» ваших существующих исполняемых файлов на «Библиотеку классов» (что означает, что они компилируются в dll вместо exes) и написать отдельные приложения запуска, которые имеют только основной и другие вспомогательные средства загрузки:
- Файл решения
- Исходное приложение без Program.cs и «Тип вывода» установлено в «Библиотеку классов»
- Средство запуска, которое ссылается на Исходное приложение и имеет только Program.cs (тип вывода - Приложение Windows)