PDA

View Full Version : اگر يك dll به برنامه ام اضافه كنم،در كامپيوتر ديگر اجرا مي شود؟



بیتافرهی
یک شنبه 19 آبان 1387, 14:02 عصر
سلام
من يك dll از اينترنت گرفته ام و در برنامه ام استفاده كرده ام.(dateTimePickerفارسي)
يه سوال برام پيش اومده:
اگه برنامه ام را روي كامپيوتر ديگه اي اجراش كنم،(با توجه به اينكه اين كامپوننت در خود visual STUDIO نبود،و من اينو از طريق CHOOSE ITEM به TOOL BOX ام اضافه كرده ام،)
برايم مشكلي ايجد نمي كنه؟مثلا در يك كامپيوتر ديگه نشونش نده يا .....

naeeme
یک شنبه 19 آبان 1387, 14:54 عصر
كنار فايل اجرايي برنامه تون dll بايد قرار بگيره. در اين حالت ديگه مشكلي ايجاد نمي شه

بیتافرهی
یک شنبه 19 آبان 1387, 15:25 عصر
يعني خودم دستي كپيش كنم؟
ضمنا وقتي من اينو از اينترنت گرفتم ،چند تا dll ديگه هم كنارش بود،در مورد اونا چي؟

ms_arani
یک شنبه 19 آبان 1387, 16:31 عصر
سلام،
نیازی به دستی کپی کردن نیست، در واقع وقتی شما یک کامپوننت از نوع UserControl رو از طریق ToolBox انتخاب می کنید اگر آن کامپوننت از DLL های دیگری هم استفاده کند باید آن DLL ها در کنارش باشند. کامپوننت اصلی به همراه DLL های مورد استفاده اش به Reference پروژه شما اضافه شده و به طور خودکار در پوشه پیش فرض Bin\Debug کپی می شوند.دقت کنید که اگر می خواهید فایل EXE پروژتونو به کسی بدید، باید همه این DLL ها در کنار فایل EXE باشند وگرنه Exception میدهد و فایل EXE اجرا نمی شود.

بیتافرهی
یک شنبه 19 آبان 1387, 18:30 عصر
اگه به طور پيش فرض كنار فايل exe ميره كه ديگه مشكلي نداره.درسته؟

SMRAH1
یک شنبه 19 آبان 1387, 18:34 عصر
سلام

یک برنامه دات نت اگر برای اجرا نیاز به یک اسمبلی (exe یا dll) داشته باشه ، به ترتیب زیر به دنبال آن می گردد:

1) مسیر جاری : کنار فایل اجرایی
2) اسمبلی نامگذاری شده تحت مسیر برنامه : فرض کنید برنامه ما به دنبال اسمبلی A می گردد.در این صورت در کنار پوشه جاری به دنبال پوشه A و در داخل آن به دنبال a.dll یا a.exe می گردد.
3) در GAC یا همان پوشه WindowsDir\assembly به دنبال آن می گردد که در آن WindowsDir همان پوشه ویندوز مثلا C:\Windows است.

موفق باشید

بیتافرهی
دوشنبه 20 آبان 1387, 07:14 صبح
پس با اين تفاسير ديگه لازم نيست من كاري انجام بدم،چون خود dll به طور اتوماتيك كنار فايل exe مي رود.
بنابراين من با خيال راحت ،برنامه ام را تحويل بدم ديگه.

ms_arani
دوشنبه 20 آبان 1387, 07:54 صبح
سلام،
بله خیالتون راحت باشه،
اصلاً پروژه کارآموزی من کار با DLL بوده و این سوالات برای منم پیش اومده بود که خوشبختانه مشکلی وجود نداره.