أهلا بكم مرة أخرى إلى درس جديد من سلسلة دروس البرمجة بلغة دلفي بالصوت والصورة، في هذا الدرس بعون الله سوف نتعلم برمجة (DLL).
قبل أن نبدأ يجب أن نعرف ماذا تعني (DLL)؟
هي عبارة عن ملفات امتدادها (DLL). وهي اختصار (dynamic-link library)، أو مكتبة الربط الديناميكية وهي عبارة عن كود يحتوي على مجموعة من الروتين* (routines) التي يمكن استدعاؤها بواسطة تطبيقات أخرى أثناء التشغيل. ويتم إنشاء ملفات (DLL) بشكل منفصل ومن ثم يتم ربطها بالبرامج أثناء التشغيل عند استخدامها.
طبعا دلفي يمكنها استدعاء ملفات (DLL) المكتوبة بواسطة لغات البرمجة الأخرى سواء الفيجوال بيسك أو السي وغيرها، كذلك يمكن للبرامج المكتوبة بواسطة لغات البرمجة الأخرى استدعاء ملفات (DLL) المكتوبة بواسطة دلفي.
قبل استدعاء دوال معرفة في (DLL) يجب ان يتم استيرادها (import them) وتعريفها في الكود. ويمكن أن يتم هذا بواسطة تعريف الدالة أو الإجراء وإضافة كلمة (external) كما هو موضح في الكود التالي:
اقتباس:procedure DoSomething; external 'MYLIB.DLL';
(*) يقصد بالروتين (routines) الإجراءات والدوال (Procedures and Functions)
إنشاء ملفات (DLL)
بيئة دلفي تحتوي على إمكانية إنشاء تطبيقات (DLL)، وهي تشبه التطبيقات الاعتيادية تحتوي على (Unit)، ولكن الفرق أنها لا تحتوي على (Form)، إضافة إلى أنها عند تشغيل البرنامج يتم إنشاء ملف امتداده (dll) بدلا من (exe) كما في التطبيقات الاعتيادية. في ملفات الفيديو الثلاث التالية سوف نتعرف أكثر على إنشاء ملفات (DLL) وكيفية استخدامها.
http://rapidshare.com/files/376610272/dll_1.rar
http://rapidshare.com/files/376611222/dll_2.rar
http://rapidshare.com/files/376612157/dll_3.rar
ارجوا أن أكون قد وفقت في تقديم الدرس.
تحياتي...!
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
للاطلاع على الدروس السابقة على الروابط التالية:
الدرس 1: http://www.alhandasa.net/forum/showthread.php?t=193706
الدرس 2: http://www.alhandasa.net/forum/showthread.php?t=193843
الدرس 3: http://www.alhandasa.net/forum/showthread.php?t=194172
الدرس 4: http://www.alhandasa.net/forum/showthread.php?t=195538
الدرس 5: http://www.alhandasa.net/forum/showthread.php?t=196247
الدرس 6: http://www.alhandasa.net/forum/showthread.php?t=197185
الدرس 7: http://www.alhandasa.net/forum/showthread.php?t=199336
الدرس 8: http://www.alhandasa.net/forum/showthread.php?t=199949
الدرس 9: http://www.alhandasa.net/forum/showthread.php?t=200778
الدرس 10: http://www.alhandasa.net/forum/showthread.php?t=201879
الدرس 11: http://www.alhandasa.net/forum/showthread.php?t=202182
الدرس 12: http://www.alhandasa.net/forum/showthread.php?t=202559
الدرس 13: http://www.alhandasa.net/forum/showthread.php?t=203887
الدرس 14: http://www.alhandasa.net/forum/showthread.php?t=204354
الدرس 15: http://www.alhandasa.net/forum/showthread.php?t=204651
الدرس 16: http://www.alhandasa.net/forum/showthread.php?t=204768
الدرس 17: http://www.alhandasa.net/forum/showthread.php?t=207721
الدرس 18: http://www.alhandasa.net/forum/showthread.php?t=207826
الدرس 19: http://www.alhandasa.net/forum/showthread.php?t=213370
الدرس 20: http://www.alhandasa.net/forum/showthread.php?t=213985
ملحق 1: http://www.alhandasa.net/forum/showthread.php?t=202141
ملحق 2: http://www.alhandasa.net/forum/showthread.php?t=202181
ملحق 3: http://www.alhandasa.net/forum/showthread.php?t=202690
ملحق 4: http://www.alhandasa.net/forum/showthread.php?t=206510
__________________
قبل أن نبدأ يجب أن نعرف ماذا تعني (DLL)؟
هي عبارة عن ملفات امتدادها (DLL). وهي اختصار (dynamic-link library)، أو مكتبة الربط الديناميكية وهي عبارة عن كود يحتوي على مجموعة من الروتين* (routines) التي يمكن استدعاؤها بواسطة تطبيقات أخرى أثناء التشغيل. ويتم إنشاء ملفات (DLL) بشكل منفصل ومن ثم يتم ربطها بالبرامج أثناء التشغيل عند استخدامها.
طبعا دلفي يمكنها استدعاء ملفات (DLL) المكتوبة بواسطة لغات البرمجة الأخرى سواء الفيجوال بيسك أو السي وغيرها، كذلك يمكن للبرامج المكتوبة بواسطة لغات البرمجة الأخرى استدعاء ملفات (DLL) المكتوبة بواسطة دلفي.
قبل استدعاء دوال معرفة في (DLL) يجب ان يتم استيرادها (import them) وتعريفها في الكود. ويمكن أن يتم هذا بواسطة تعريف الدالة أو الإجراء وإضافة كلمة (external) كما هو موضح في الكود التالي:
اقتباس:procedure DoSomething; external 'MYLIB.DLL';
(*) يقصد بالروتين (routines) الإجراءات والدوال (Procedures and Functions)
إنشاء ملفات (DLL)
بيئة دلفي تحتوي على إمكانية إنشاء تطبيقات (DLL)، وهي تشبه التطبيقات الاعتيادية تحتوي على (Unit)، ولكن الفرق أنها لا تحتوي على (Form)، إضافة إلى أنها عند تشغيل البرنامج يتم إنشاء ملف امتداده (dll) بدلا من (exe) كما في التطبيقات الاعتيادية. في ملفات الفيديو الثلاث التالية سوف نتعرف أكثر على إنشاء ملفات (DLL) وكيفية استخدامها.
http://rapidshare.com/files/376610272/dll_1.rar
http://rapidshare.com/files/376611222/dll_2.rar
http://rapidshare.com/files/376612157/dll_3.rar
ارجوا أن أكون قد وفقت في تقديم الدرس.
تحياتي...!
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
للاطلاع على الدروس السابقة على الروابط التالية:
الدرس 1: http://www.alhandasa.net/forum/showthread.php?t=193706
الدرس 2: http://www.alhandasa.net/forum/showthread.php?t=193843
الدرس 3: http://www.alhandasa.net/forum/showthread.php?t=194172
الدرس 4: http://www.alhandasa.net/forum/showthread.php?t=195538
الدرس 5: http://www.alhandasa.net/forum/showthread.php?t=196247
الدرس 6: http://www.alhandasa.net/forum/showthread.php?t=197185
الدرس 7: http://www.alhandasa.net/forum/showthread.php?t=199336
الدرس 8: http://www.alhandasa.net/forum/showthread.php?t=199949
الدرس 9: http://www.alhandasa.net/forum/showthread.php?t=200778
الدرس 10: http://www.alhandasa.net/forum/showthread.php?t=201879
الدرس 11: http://www.alhandasa.net/forum/showthread.php?t=202182
الدرس 12: http://www.alhandasa.net/forum/showthread.php?t=202559
الدرس 13: http://www.alhandasa.net/forum/showthread.php?t=203887
الدرس 14: http://www.alhandasa.net/forum/showthread.php?t=204354
الدرس 15: http://www.alhandasa.net/forum/showthread.php?t=204651
الدرس 16: http://www.alhandasa.net/forum/showthread.php?t=204768
الدرس 17: http://www.alhandasa.net/forum/showthread.php?t=207721
الدرس 18: http://www.alhandasa.net/forum/showthread.php?t=207826
الدرس 19: http://www.alhandasa.net/forum/showthread.php?t=213370
الدرس 20: http://www.alhandasa.net/forum/showthread.php?t=213985
ملحق 1: http://www.alhandasa.net/forum/showthread.php?t=202141
ملحق 2: http://www.alhandasa.net/forum/showthread.php?t=202181
ملحق 3: http://www.alhandasa.net/forum/showthread.php?t=202690
ملحق 4: http://www.alhandasa.net/forum/showthread.php?t=206510
__________________