PDA

View Full Version : استفاده از Dll در برنامه



zoncpp
چهارشنبه 17 دی 1393, 11:57 صبح
سلام
برای استفاده از Dll در یک برنامه C# ، آیا بهتر است آن را Add Reference کنیم در پروژه؟ یا به صورت
[
DllImport("Dll_C.dll")]
توابع آن را فراخوانی کنیم.
کدام روش بهتر است؟

یک سوال دیگر هم دارم، اینکه:
چه نوع dllهایی را می توانیم به صورت AddReference در پروژه استفاده کنیم؟

یک dll دارم که با C++ ایجاد شده است. توابع آن را با استفاده از DllImport معرفی و استفاده میکنم و dll باید کنار exe باشد.
اما نمیتوانم آن را AddReference کنم، خطا می دهد:
Please make sure file is accessile, and that it is a valid assembly or COM component


ممنون

SabaSabouhi
چهارشنبه 17 دی 1393, 13:54 عصر
سلام
بستگی داره به شرایط.
بعضی وقت‌ها لازم هست از comها استفاده کنی و اون dll هم به هیچ زبون خوشی register نمی‌شه.
تو اون شرایط DllImport به راحتی مشکل رو حل می‌کنه.
اما معمولاً وقتی بشه AddReference کرد. خوب بهتره.

صبا صبوحی

plus
چهارشنبه 17 دی 1393, 14:02 عصر
COM ها و NET Assembly. ها رو میتونید Add Reference کنید (مثل Assembly های خود NET. یا کامپوننت Adobe PDF) ولی Dynamic Link Library ها که شامل تعدادی function هستن (مثل Win32 API Library) رو باید DllImport کنید.
تا اونجا که من میدونم فقط یکی از این دو روش برای یک DLL قابل انجام هست و شما انتخابی نداری که بخوای بدونی کدوم روش بهتره.