برگزیده های پرشین تولز

استفاده از DLL برنامه های دیگر

yadi

کاربر تازه وارد
تاریخ عضویت
18 اکتبر 2004
نوشته‌ها
33
لایک‌ها
0
چه طوری می تونم از DLL برنامه های دیگر در برنامه خودم استفاده کنم؟
می خوام توابع و زیر برنامه هایی که در آن DLL وجود دارد را به دست آورده و با دانستن اینکه چگونه آنها را فراخوانی کرد
از آنها در برنامه خودم استفاده کنم
مرسی
 

Mavix

کاربر تازه وارد
تاریخ عضویت
1 فوریه 2006
نوشته‌ها
34
لایک‌ها
1
سن
41
محل سکونت
Tabriz
با سلام

دوست عزيز شما ميتوانيد از هر DLL که دلتون ميخواد چه در دلفي و چه در VB و ... با دانستن نام توابع آن ، ازش بدين صورت استفاده کنيد:

;procedure f1(); external 't1.dll​

که f1 نام تابع درون DLL و t1 نام فايل DLL مي باشد که در مسير پروژه قرار دارد. در ضمن اگه داخل DLL بجاي procedure از function استفاده شده باشد ، بايد نام مناسب با آن رو بنويسيد ، يعني :

;'function f1(); external 't1.dll​
 

Arash_j13

Registered User
تاریخ عضویت
18 فوریه 2005
نوشته‌ها
778
لایک‌ها
2
محل سکونت
مشهد
آلبته اضافه کنم
توی dll های استاندارد در ویندوز که با c نوشته شدن روش فراخوانی توابع stdcall هست یعنی پارمتر های از راست به چپ روی پشته قرار می گرن اما رد دلفی این استاندارد fastcall ]ست برای رفع این نا هماهنگی بعد از تعریف تابع کلمه stdcall رو بنویسید و هم چنین به جای string از pchar استفاده کنید چون رشته های دلفی منحصر به فرد هستن و بقیه زبان های از رشته های مختوم به تهی استفاده می کنن

function test(t1:integer;str:pchar):word;external 'dll_name.dll';stdcall;
 

yadi

کاربر تازه وارد
تاریخ عضویت
18 اکتبر 2004
نوشته‌ها
33
لایک‌ها
0
به نقل از Mavix :
با سلام

دوست عزيز شما ميتوانيد از هر DLL که دلتون ميخواد چه در دلفي و چه در VB و ... با دانستن نام توابع آن ، ازش بدين صورت استفاده کنيد:

;procedure f1(); external 't1.dll​

که f1 نام تابع درون DLL و t1 نام فايل DLL مي باشد که در مسير پروژه قرار دارد. در ضمن اگه داخل DLL بجاي procedure از function استفاده شده باشد ، بايد نام مناسب با آن رو بنويسيد ، يعني :

;'function f1(); external 't1.dll​

آخه یه مشکلی است
از کجا بدونم که چه توابع و زیربرنامه هایی در آن dll است؟
برنامه هایی هست که آن توابع داخل dll را نشون بده؟
این dll که من میگم از dllهای ویندوز نیست بلکه مال یه برنامه کاربردی دیگری است.
 

Arash_j13

Registered User
تاریخ عضویت
18 فوریه 2005
نوشته‌ها
778
لایک‌ها
2
محل سکونت
مشهد
یه برنامه ست که نشون نی ده چه توابعی هست اما پارمتر هاش رو نشون نمی ده یان برنامه با ویژوال استادیو نصب می شه الان اسمش یادم نیست اما خب تا وقتی پارمتر های رو بلد نباشی نمی تونی ازش استفاده کنی
 
بالا