امتیاز موضوع:
  • 2 رأی - میانگین امتیازات: 4
  • 1
  • 2
  • 3
  • 4
  • 5
نوشتن و استفاده از DLL
نویسنده پیام
babyy آفلاین
بازنشسته
*****

ارسال‌ها: 3,095
موضوع‌ها: 141
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 35081
( 26090 تشکر در 9068 ارسال )
ارسال: #12
RE: نوشتن و استفاده از DLL
سلام

اول اینکه جناب yeketaz این DLL که گفتی ، همونطور که hoax3r گفت ، تو ثبت کردنش ERROR میده ؛ من یه مشکل دیگه با اون DEF داشتم که هنگام کامپایل ERROR میداد ،و مجبور شدم چند خط ازشو حذف کنم تا درست شه ! ولی چون ثبت نشد تو ویندوز دیگه ندیدم که کار میکنه یا نه

2-در مورد DLL : میخواستم DLLای بنویسم و مثلا بدم بیرون ، اشخاص دیگه ازش استفاده کنن ، حتی با ندونستن توابع داخل DLL ؛ ممنون اگه اینم راهنمایی کنین.

3-جناب lord_viper منبی ندارید که توش توضیح داده باشه که برای کدوم توایه API باید چه هدری رو include کنیم ؟؟ (مثلا createfile اگه اشتباه نکنم تو user32 هستش و ....)

دوستان از همه ممنون که جواب میدین.
(آخرین ویرایش در این ارسال: ۱۶-دى-۱۳۸۷, ۱۸:۵۸:۵۱، توسط babyy.)
۱۶-دى-۱۳۸۷, ۱۸:۵۰:۰۱
وب سایت ارسال‌ها
پاسخ
yeketaz آفلاین
کاربر با تجربه
****

ارسال‌ها: 744
موضوع‌ها: 123
تاریخ عضویت: اسفند ۱۳۸۶

تشکرها : 520
( 1050 تشکر در 294 ارسال )
ارسال: #13
RE: نوشتن و استفاده از DLL
بله الان که با regsvr تست کردم اررور داد

برای راه های دیگه به پست قبلی منو ببینید

==========================

شما اگه از ++VC استفاده کنید نیاز به درگیری با هدرها نداره فقط با :: می شه به کامپایلر فهموند که این تابع API ه

مثلا :

FindWindow::

ما که دیگه توی ایران ویج پیر شدیم 040 کم کم باید جامون رو بدیم به جوونا 028
(آخرین ویرایش در این ارسال: ۱۶-دى-۱۳۸۷, ۱۸:۵۹:۲۶، توسط yeketaz.)
۱۶-دى-۱۳۸۷, ۱۸:۵۳:۰۰
وب سایت ارسال‌ها
پاسخ
babyy آفلاین
بازنشسته
*****

ارسال‌ها: 3,095
موضوع‌ها: 141
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 35081
( 26090 تشکر در 9068 ارسال )
ارسال: #14
RE: نوشتن و استفاده از DLL
سلام

یعنی فقط با :: مشکل حله ؟؟ حالا هر تابع API ای بود ؟؟
۱۶-دى-۱۳۸۷, ۱۹:۰۱:۲۸
وب سایت ارسال‌ها
پاسخ
yeketaz آفلاین
کاربر با تجربه
****

ارسال‌ها: 744
موضوع‌ها: 123
تاریخ عضویت: اسفند ۱۳۸۶

تشکرها : 520
( 1050 تشکر در 294 ارسال )
ارسال: #15
RE: نوشتن و استفاده از DLL
شما توی محیط کدنویسی ++VC کلید Ctrl رو همزمان با Space بزن تا منوش بازشه

بعد توش معلومه که توابع API هست ولی اگه همینطوری استفاده کنی خطا می ده چون خوده ++VC هم توابعی شکل API ها داره

در نتیجه باید معلوم کنی کدوم تابع رو می خوای. اگه خالی به کار ببری که تابع خوده ++C ه ولی اگه :: گذاشتی اولش بهش گفتی

که منظورم توابع API ه

تقریبا تمام API ها رو پوشش می ده

ما که دیگه توی ایران ویج پیر شدیم 040 کم کم باید جامون رو بدیم به جوونا 028
۱۶-دى-۱۳۸۷, ۱۹:۰۶:۱۹
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : babyy
babyy آفلاین
بازنشسته
*****

ارسال‌ها: 3,095
موضوع‌ها: 141
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 35081
( 26090 تشکر در 9068 ارسال )
ارسال: #16
RE: نوشتن و استفاده از DLL
سلام

آقا شرمنده ! نشد ، برای مثال تابع PathIsexist ( اگه اینجا درست نوشته باشم ) تو لیستش هست ، وقتی اولش :: میزارم ، هنگام کامپایل میگه باید تعریفش کنی !! باید چی کار کنم ؟؟

ممنون و ببخشید
۱۹-دى-۱۳۸۷, ۱۸:۱۴:۱۲
وب سایت ارسال‌ها
پاسخ
yeketaz آفلاین
کاربر با تجربه
****

ارسال‌ها: 744
موضوع‌ها: 123
تاریخ عضویت: اسفند ۱۳۸۶

تشکرها : 520
( 1050 تشکر در 294 ارسال )
ارسال: #17
RE: نوشتن و استفاده از DLL
با 6 ++Visual C دارید کار می کنید دیگه؟

برای من که همچین چیزی نداره و اگه نداشته باشه می گه باید تعریفش کنید

فقط یه PathFileExists هست که مشکلی نداره و اصلا به :: هم نیاز نداره

ما که دیگه توی ایران ویج پیر شدیم 040 کم کم باید جامون رو بدیم به جوونا 028
۱۹-دى-۱۳۸۷, ۱۹:۴۵:۵۰
وب سایت ارسال‌ها
پاسخ
hoax3r آفلاین
كاربر دو ستاره
**

ارسال‌ها: 63
موضوع‌ها: 2
تاریخ عضویت: آذر ۱۳۸۶

تشکرها : 38
( 93 تشکر در 46 ارسال )
ارسال: #18
RE: نوشتن و استفاده از DLL
سلام
این جور توابع که میگه نیست یعنی اینکه فایل lib اون api رو تعریف نکردی
برای هر API که استفاده میکنید باید ببیند که چه کتابخانه و چه هدر فایلی رو به کدتون باید اضافه کنید
اینا تو MSDN هست برای تابع PathIsExe باید کتابخانه ی shell32.lib و هدر shlobj.h تعریف بشن
برای تعریف کتابخانه یا باید داخل تنظیمات کامپایلرت بری و واردش کنی یا با دستور pragma تعریفش کنی
که حالت دوم به این صورت میشه

کد:
#include <windows.h>
#include <shlobj.h>

#pragma comment(lib, "shell32.lib")
...
...
...
(آخرین ویرایش در این ارسال: ۱۹-دى-۱۳۸۷, ۲۳:۳۴:۰۴، توسط hoax3r.)
۱۹-دى-۱۳۸۷, ۲۳:۳۳:۱۰
ارسال‌ها
پاسخ
تشکر شده توسط : lord_viper, yeketaz
babyy آفلاین
بازنشسته
*****

ارسال‌ها: 3,095
موضوع‌ها: 141
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 35081
( 26090 تشکر در 9068 ارسال )
ارسال: #19
RE: نوشتن و استفاده از DLL
سلام

دوستان ببخشيد ، الان مثلا من ميخوام PathIsDirectory رو که يه تايع API هست رو تو برنامم يزارم ، تو ليست هم هست ، ميشه کدشو واسم بزاريد ؟؟ از طریق ::


ممنون


فایل‌(های) پیوست شده
.bmp   untitled.bmp (اندازه: 167.96 KB / تعداد دفعات دریافت: 27)
۲۱-دى-۱۳۸۷, ۱۳:۵۰:۲۷
وب سایت ارسال‌ها
پاسخ
babyy آفلاین
بازنشسته
*****

ارسال‌ها: 3,095
موضوع‌ها: 141
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 35081
( 26090 تشکر در 9068 ارسال )
ارسال: #20
RE: نوشتن و استفاده از DLL
سلام

معذرت میخوام یه در خواستی کرده بودم اگه اشتباه نکنم ! کسی جواب نداره بده ؟!
۲۸-دى-۱۳۸۷, ۰۲:۴۳:۰۴
وب سایت ارسال‌ها
پاسخ
hoax3r آفلاین
كاربر دو ستاره
**

ارسال‌ها: 63
موضوع‌ها: 2
تاریخ عضویت: آذر ۱۳۸۶

تشکرها : 38
( 93 تشکر در 46 ارسال )
ارسال: #21
RE: نوشتن و استفاده از DLL
اون لیست فقط برای کمک به برنامه نویسه به این معنی نیست که api تعریف هم شده

یه مثال ساده از این API
کد:
#include <windows.h>
#include <shlwapi.h>

#pragma comment(lib, "shlwapi.lib")

int main()
{
    if ( PathIsDirectory("c:\\windows") )
        MessageBox( NULL, "Valid path.", "MsG", MB_OK );
    else
        MessageBox( NULL, "Invalid path.", "MsG", MB_OK );

    return 0;
}
۲۹-دى-۱۳۸۷, ۱۸:۲۳:۱۴
ارسال‌ها
پاسخ
تشکر شده توسط : babyy, lord_viper
babyy آفلاین
بازنشسته
*****

ارسال‌ها: 3,095
موضوع‌ها: 141
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 35081
( 26090 تشکر در 9068 ارسال )
ارسال: #22
RE: نوشتن و استفاده از DLL
سلام

ممنون ، فقط یه دو تا سوال دیگه :

کد:
#pragma comment( lib, "shlwapi.lib")

این خط یعنی چی ؟؟ (پارا متراش منظورم ؛ بالا توضیح دادید فقط واسه اعلانه )

و اینکه <windows.h> رو واسه تمام توابع API باید بیاریم ؟؟ و بجای <shlwapi.h> نام کتابخانه ای که اون API توش قرار داره ، درسته ؟؟ ( لینک msdn آنلاین که اینا توشه رو کیشه بزارید ؟ )

ممنون
۲۹-دى-۱۳۸۷, ۱۹:۲۰:۴۹
وب سایت ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  [سوال] نوشتن درایور برای FileSystem Monitor برای همه نسخه های ویندوز nImaarek 1 1,605 ۲۴-خرداد-۱۳۹۷, ۲۰:۳۴:۰۰
آخرین ارسال: NO DONGLE
  [آموزشی] فیلم فارسی آموزش نوشتن File Locker ساده در ++C one hacker alone 0 2,323 ۰۵-اسفند-۱۳۹۴, ۰۸:۰۷:۰۰
آخرین ارسال: one hacker alone
  [آموزشی] آموزش نوشتن File Locker ساده در ++C one hacker alone 0 2,151 ۲۵-بهمن-۱۳۹۴, ۰۵:۴۲:۲۱
آخرین ارسال: one hacker alone
  [سوال] کمک برا نوشتن برنامه hadikh73 13 8,836 ۱۹-اردیبهشت-۱۳۹۴, ۱۰:۱۲:۲۲
آخرین ارسال: *بنده خدا*
  [فوری] نوشتن درایور برای سخت افزار saeedsepn 10 7,297 ۱۳-دى-۱۳۹۳, ۱۷:۰۹:۰۵
آخرین ارسال: saeedsepn
  کمک برای شروع به نوشتن درایور salehjg 5 8,057 ۲۸-فروردین-۱۳۹۳, ۰۳:۲۷:۰۲
آخرین ارسال: salehjg
  کمک در نوشتن ارایه دو بعدی hut 0 2,144 ۲۲-آذر-۱۳۹۲, ۱۷:۱۵:۰۰
آخرین ارسال: hut
  خواندن و نوشتن aleas 1 3,061 ۰۶-اسفند-۱۳۹۱, ۲۲:۰۴:۵۵
آخرین ارسال: Ghoghnus
Cool [سوال] Thumbs down HELP...ترو خدا تو نوشتن این برنامه آسون کمکم کنین ... :-d alidodar1 7 7,020 ۲۶-مرداد-۱۳۹۱, ۲۳:۳۶:۱۱
آخرین ارسال: invincible
Exclamation نوشتن اعداد در 7 ستون یه مشکل خیلی ساده در C St4r-S4t 2 4,434 ۱۷-اردیبهشت-۱۳۹۱, ۱۰:۵۴:۰۶
آخرین ارسال: sjh

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS