PDA

View Full Version : سوال: مشکل با اضافه کردن Property به DLL و استفاده از آن در برنامه



leoarsalan
دوشنبه 06 تیر 1390, 20:26 عصر
سلام دوستان من دارم یک DLL واسه برنامه ام مینویسم اما توش به این مشکل خوردم کسی میتونه کمکم کنی
ببینید من تو دی ال ال این کد رو دارم البته کد کامل نیست این بخش اصلیش هست
Public Function Winsar_UnPack()
Dim Move() As Byte
Open Path For Binary As #1
ReDim Move(FileLen(Path) - 1)
Get #1, 13, Move
Close #1
UncompressFile Path, Path & ".unzlib"
End Function

بعد میخوایم این Path که تو فایل قرار دادم رو باید حالت پراپرتی در هنگام استفاده از دی ال ال از کاربر بگیرم

این هم کد تعریف پراپرتی

Public Property Get Unzlib() As WinsarZlib
Unzlib = Path
End Property

این کدی که در برنامه ام میخوام از دی ال ال و این بخش استفاده کنم اما برنامه Error 91: Object variable or With block variable not set رو میده

میشه بگین مشکل کار از کجاس ؟؟

leoarsalan
دوشنبه 06 تیر 1390, 22:26 عصر
کسی نیستش جواب مارو بده ؟:گیج:

returnx
دوشنبه 06 تیر 1390, 23:56 عصر
Error 91: Object variable or With block variable not set
این خطا بخاطر اینکه زمان استفاده از شیتون ، شیتون ساخته نشده شما باید یک متغیر به اسم کلاستون ایجاد کنید و بعد از اون یک شی بسازید به طور مثال:

Dim myobject As classname
Set myobject = New classname

leoarsalan
سه شنبه 07 تیر 1390, 00:22 صبح
دوست عزیز هیچ ارتباطی نداشت باز هم همون خطا رو داد ببینید خواسته اصلی من این هست که چطوری از اون Unzlib که در Property گذاشتم تو Public Function استفاده کنم

محسن واژدی
سه شنبه 07 تیر 1390, 07:54 صبح
دوست عزیز هیچ ارتباطی نداشت باز هم همون خطا رو داد ببینید خواسته اصلی من این هست که چطوری از اون Unzlib که در Property گذاشتم تو Public Function استفاده کنم

سلام عليكم
البته اين همانگونه كه آقاي ms2222 هم گفتند اين خطا مربوط به ايجاد نشدن شي با New يا Set است

براي تعريف بصورت Function ميتوانيد از الگوي زير استفاده كنيد:
Public Function Unzlib(us As WinsarZlib)
'commands
End Function


موفق باشيد

leoarsalan
سه شنبه 07 تیر 1390, 10:18 صبح
نه دوست عزیز متوجه من نشدید من میخوام از اون پراپرتی یعنی Unzlib = Path در فانکشن استفاده کنم