PDA

View Full Version : استفاده از dll بصورت داینامیک



once4ever
پنج شنبه 03 اسفند 1385, 09:07 صبح
میخوام تو برنامه از dll ای که نامش بصورت پارامتر از کاربر گرفته بشه استفاده کنم و تابعی از اون dll اجرا کنم.
حالا اگه امکانش باشه که نام اون تابع هم بصورت پارامتر گرفته بشه که چه بهتر
روش کار چجوریه؟

leilav_1984
پنج شنبه 03 اسفند 1385, 10:55 صبح
میخوام تو برنامه از dll ای که نامش بصورت پارامتر از کاربر گرفته بشه استفاده کنم و تابعی از اون dll اجرا کنم.


باید پارامتر ورودی رو از جنس Assembly تعریف کنی و با GetTypes کلاسهاشو بیرون بکشی
یه نگاهی به پست شماره 7 این تاپیک (http://www.barnamenevis.org/forum/showthread.php?t=61453) و برنامه هایی که بهش Attach کردم بنداز.
واسه شناسایی dll انتخابی همون کاری انجام شده که شما می خوای با کمی تفاوت

once4ever
پنج شنبه 03 اسفند 1385, 14:25 عصر
خوب من تا اینجاشو فهمیدم

Assembly objDLL = Assembly.LoadFrom("Mydll.dll");
Type objInterface;

//get classes
foreach (Type typ in objDLL.GetTypes())
{
MessageBox.Show(typ.FullName);
}


اما چجوری یکی از توابع رو اجرا کنم؟