سلام به دوستان
میخواستم از یک Assembly که مثلا دارای چندین فرم هست فرم پیشفرض این Assembly رو پیدا کنم
ممنون
سلام به دوستان
میخواستم از یک Assembly که مثلا دارای چندین فرم هست فرم پیشفرض این Assembly رو پیدا کنم
ممنون
شما وقتی کلاس Program و تابع Main رو نگاه کنید، اسم فرمی که اول اجرا میشه رو نوشته ...
internal static class Program
{
[STAThread]
private static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(fals e);
try
{
Application.Run(new Form1());
}
catch (Exception exception)
{
MessageBox.Show(exception.Message);
}
}
}
اینجا :
Application.Run(new Form1());
ممنون ولی به چه شکل
این کد که من الان استفاده میکنم میاد اولین فرم اسمبلی رو میسازه در صورتی که من فرم پیشفرض رو میخوام همون فرمی که وقتی رو exe کلیک میشه باز میشه
برای مثال در کدی که گذاشتم Form1 رو باز میکنه در صورتیکه فرم پیشفرض Form2 است
Assembly asm = Assembly.LoadFile(Application.StartupPath + "\\a.exe");
Form frm=null;
var types = asm.GetTypes();
foreach (Type t in types)
{
if (t.BaseType == typeof(Form))
{
frm = (Form)Activator.CreateInstance(t);
break;
}
}
frm.Show();
سلام.
در این دستور frm را نمایش میدهد.
frm را از نوع form2 ایجاد نشده؟
سلام
Frm نباید از نوع Form2 باشد زیرا قرار هست هر فرمی که در Assembly وجود دارد یک نمونه ازش ساخته شود .
سلام
کسی راه حلی نداره
تشکر