PDA

View Full Version : سوال: استفاده از کتابخانه های dll در پروژه های کیوت



sd.CSharpProgrammer
دوشنبه 05 دی 1390, 15:36 عصر
سلام

تو اینترنت خیلی گشتم ولی چیز بدردبخوری دستگیرم نشد! چطوری میتونم کتابخانه dllای که با کیوت کریتور (C++ Library) ساختم رو به پروژه هام اضافه کنم و از کلاسهاش استفاده کنم. تو دات نت با گزینه Add Reference به راحتی میشه اینکار رو انجام داد ولی تو کیوت کریتور چیزی پیدا نکردم!!

اساتید ممنون میشم با مثالی ساده راهنمائی کنید.
مرسی

alamate_aoal
سه شنبه 06 دی 1390, 00:10 صبح
سلام

این مثال رو نگاه بنداز , اگر نکته نامفهومی داره انشاء الله در حد توانم پاسخگو خواهم بود.

saeedIRHA
سه شنبه 06 دی 1390, 00:21 صبح
http://www.voidrealms.com/viewtutorial.aspx?id=243
http://www.voidrealms.com/viewtutorial.aspx?id=244

sd.CSharpProgrammer
سه شنبه 06 دی 1390, 09:52 صبح
سلام


http://www.voidrealms.com/viewtutorial.aspx?id=243
http://www.voidrealms.com/viewtutorial.aspx?id=244
فایلها دانلود نمیشن. الان تقریباً 10 دقیقه ای میشه رو دکمه های Click here to download کلیک کردم هنوز داره زور میزنه :لبخند:

sd.CSharpProgrammer
سه شنبه 06 دی 1390, 10:12 صبح
سلام


این مثال رو نگاه بنداز , اگر نکته نامفهومی داره انشاء الله در حد توانم پاسخگو خواهم بود.
دستت درد نکنه دوست عزیز دانلود کردم ولی کلی سوال تو ذهنم هست :متفکر:

1. تو فایل Making_DLL.pro این خط یعنیییییی چه؟ :لبخند:


DEFINES += MAKINGDLL_LIBRARY


2. تو فایل Using_DLL.pro فکر کنم این خط dll رو به پروژه میشناسونه ولی اگه تعداد فایلهای dll زیاد باشن چطوری به انتهای دستور اضافه میشن؟! با کاما یا فاصله یا چی؟


LIBS += -L. -lmydll


3. دستور INCLUDEPATH چی رو مشخص میکنه؟
4. الان که پروژه ها رو build کردم تو فولدر Using_DLL\debug فایل exe رو به همراه چند فایل دیگه قرار داد ولی اثری از فایل dll نیست. آیا باید خودمون کنار exe کپی کنیم یا بهش لینک شده یا چی؟ خلاصه تکلیفش چیه؟!

با تشکر فراوان

alamate_aoal
سه شنبه 06 دی 1390, 16:01 عصر
سلام

1- یک ماکرو هست که مورد کاربردش در فایل MakingDLL_global.h هست. ویزارد کیوت کریتور وظیفه تولید این ماکرو و فایل MakingDLL_global.h رو بر عهده داره.

2- علاوه بر استفاده از کاراکتر فاصله میتونی از فرم زیر هم استفاده کنی
LIBS += -L. -lmydll \
-lmydll1 \
-lmydll2

3- این دستور مسیر فایل header شما رو مشخص میکنه.
مثلا دستور زیر باعث میشه که مسیر جاری, با حفظ مسیرهای قبلی به عنوان مسیر فایل header انتخاب بشه
INCLUDEPATH += .
(کاراکتر نقطه(.) یعنی مسیر جاری)

4- دستور DESTDIR = ../Using_DLL در فایل Making_DLL.pro باعث میشه که فایل dll در پوشه ی Using_DLL ساخته بشه
(معنی دونقطه(..) در دستور بالا یعنی از موقعیت فعلی یکی برگرد عقب)
اگه پروژه رو از محیط کیوت کریتور اجرا میکنی نیازی به کپی کردن فایل dll در کنار فایل اجرایی نداری , در غیر اینصورت باید فایل mydll.dll رو از پوشه ی Using_DLL به کنار فایل اجرایی خودتون منتقل کنید