الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

هل يمكن ان يكون هذا الكود كمكتبة DLL

مغلق
بدأه مبرمج مبتدا في 24 يوليو 2007 · 12 رد · 920 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله

جعلت في الجنرال هذا الكود :

Function HS(ByVal a As Integer, ByVal b As Integer) As Integer
HS = a + b - 375
End Function

واصبح شغال

لكن اذا اردته في كم مشروع فالاسهل ان انشاء مكتبة له

انشات المكتبة بنفس الكود

لكن في المشروع الجديد project > references واستدعيت المكتبة

لكن عندما اريد استدعاء الدالة HS لا فائدة

ملاحظة : لم اصنع من قبل مكتبة ولا اعرف كيف لكن الكود شغال اذا حطيته في الجنرال

اتمنى الحل

واريد اتعلم انشاء مكتبة لازم تكون هذي بدايتي :D

تم تعديل هذه المشاركة بواسطة مبرمج مبتدا في 24 يوليو 2007 في 14:50

startingprogremmer.jpg
#2

عملك جيد فقط عند استدعائك للمكتبة استخدم الكود التالي للحصول على النتيجة

 Dim m As New HS.MyClass
 Dim n As Long
 n = m.HS(380, 100

)

تحياتي

OMANI FOR EVER

-------------------------------------------------

post-12787-12780191801974.jpg

-------------------------------------------------

#3

اخي لم افهم ما تقصد

هل المكتبة بها خطا ؟؟

لماذا لا تصبح مثل الي يصبح عند وضع الكود في جنرال

Dim m As New HS.MyClass
Dim n As Long
n = m.HS(380, 100

هل اضع هذا الكود في المكتبة او اين

اريد ان اجعل المكتبة مثل ما اضع الكود في الجنرال

startingprogremmer.jpg
#4

تحطه فى مشروعك اللى هتستخدم فيه المكتبة , لأن ده أعلان عنها , و هو ضرورى ولا يمكن الأستغناء عنه

#5

أخي الكريم ، الغرض التي قمت بصناعتة من نوع محلي Private ، يجب تصريحة بحيث أن يكون عام Public كما يلي :

Public Function HS(ByVal a As Integer, ByVal b As Integer) As Integer

HS = a + b - 375

End Function

ومن ثم قم بإستخدام الدالة بعد إدراجها للمشروع كما يلي :

Dim m As New HS.MyClass

Dim n As Long

n = m.HS(380, 100)

وشكراً

لا تخلط ما بين شخصيتي وأسلوبي .. فشخصيتي هي

ما أنا عليه وتحت تصرفي .. وأسلـوبي يعتمد عليـك

أنت وتصرفاتك

ولحظاتي صمت... وصمـت لحظاتي كلام ... كلامه

اشد آلام ... فصمتي أنا عنوان

عصر التكنولوجيا المعلوماتية(مدونتي الخاصة)

My FaceBook

#6

ما اعرفه بان المكتبات لا يوجد بها

Dim m As New HS.MyClass
Dim n As Long
n = m.HS(380, 100)

لماذا يجب اضافة هذا الكود ؟؟

على العموم انظر بنفسك

dll.rar

startingprogremmer.jpg
#7

اخي الكريم :

من المفروض انك تستخدم الكود التالي لمكتبتك

 Dim m As New Class1
 Dim n As Long
 n = m.HS(200, 230)

تحياتي

OMANI FOR EVER

-------------------------------------------------

post-12787-12780191801974.jpg

-------------------------------------------------

#8

اخي لا فائدة انت عدل في المشروع و ارفقه

startingprogremmer.jpg
#9

يمكن استدعاؤه مباشرة دون تعريف الفئة عن طريق :

من خصائض الفئة

Class properties --> instancing

وبعد ذلك GlobalMultiUse

حيث تصبح تطلبه في برنامجك كاي دالة للفيجوال بيسك

x= HS(1,2)

#10

بسم الله

أخي العزيز مبرمج مبتدئ المشكلة هي أنك تعرف المتغير على أنه المكتبة بينما المفروض أنك تعرف المكتبة على إنها الكلاس يعني

dim m as new class1
dim n as long
n=m.hs(1,2)

جربها أخي وإنشاالله بتظبط

#11

فتحت المشروع المرفق فالظاهر انك كنت تشتغل على مشروع عادي ثم حولته الى مشروع مكتبة لكن لو من الاساس عملت مشروع مكتبة ستجد ان خاصية الفئة في instancing هي multi use بينما حاليا موجودة عندك private .

لكن لا اعرف كيف تمكنت من تحويل المشروع الى dll.

طبعا للوصول الى خصائص الفئة افتح الفئة ثم اضغط f4

#12

اخي طارق مشكوووووور لقد ساعدتني حيث claass proptis

وهذا ما اقصده :) لا اقصد dim m as new class1......

startingprogremmer.jpg

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…