ورود

View Full Version : سوال: نحوه ی call کردن dll ساخته شده ؟؟



setroyd
شنبه 10 دی 1390, 13:13 عصر
دوستان عزیز به چه شکل میشه dll نوشته شده در vb6 را بدون رفرنس کردن call کرد مثل توابع api میخوام Declar کنم در برنامه ولی نمیدونم به چه شکل کلاس هامو call کنم در بین 100 function که نوشتم و .... اگه کسی کدی داره بزاره که کامل متوجه بشم .

محسن واژدی
شنبه 10 دی 1390, 15:19 عصر
سلام
همانطور که اطلاع دارید یکی از تفاوت های activex-dll های نوشته شده در وی بی با سایر کتابخانه های استاندارد نوشته شده در c, delphi ,... این است که کتابخانه های وی بی حتما بایستی پیش از احضار در سیستم ثبت شده باشند،
برای استفاده هم یا بایستی در زمان طراحی اضافه شوند یا در زمان اجرا آنها را ایجاد کنیم
مانند کد زیر:

Private Sub Command1_Click()
Dim fso As Object
Set fso = CreateObject("scripting.filesystemobject")
MsgBox fso.GetFileVersion(Environ("windir") & "\explorer.exe")
MsgBox fso.GetFileName(Environ("windir") & "\explorer.exe")
Set fso = Nothing
End Sub


موفق باشید

M.T.P
شنبه 10 دی 1390, 17:05 عصر
برای اینکه بتونید توابع موجود در dll ساخت خودتون رو به شکل توابع API صدا بزنید نیاز به ایجاد یک تابع در dll برای load شدن آن توسط سیستم عامل هست.
تو vb این کار بصورت غیر مستقیم و ایجاد یک فایل def انجام میشه.
اینجا (http://www.vb-helper.com/howto_make_standard_dll.html) هم آموزش کاملش هست.

اگه متوجه نشدید ، بفرمایید تا موضوع رو بشکافیم و به جزئیات اون بپردازیم.

kitcat_m18
شنبه 10 دی 1390, 21:47 عصر
سلام M.T.P عزيز،
اگه ممکنه از اول با هم اين فرايند رو مرور کنيم
ممنون :لبخندساده: