我试图找出一种在我的 WinForm 应用程序加载之前预处理一些事情的方法。我尝试将静态 void Main() 放在类库项目中的表单中,并从 Program.cs 中将其注释掉。这产生了一个编译时错误:“......不包含适合入口点的静态'Main'方法”。这是有道理的,因为没有加载程序,也没有加载 DLL。
所以问题是,有没有办法做到这一点?我希望 DLL 中的表单能够确定使用哪个表单启动应用程序:
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
if(condition1)
{
Application.Run(new Form1());
}
else if(condition2)
{
Application.Run(new Form2());
}
}
此逻辑将在多个应用程序中使用,因此将其放在一个通用组件中是有意义的。