بالنسبة لكائنات تغليف DLL محددة ، يرجى الرجوع إلى "تغليف DLL وتكنولوجيا كائنات الاتصال في Delphi" والرمز المصدري للكتاب.
واجهت بعض المشكلات الغريبة في عملية تجميع DLLs باستخدام Delphi.
1. يكتب مشروع DLL الذي تم إنشاؤه بواسطة Delphi: يجب أن يكون حليميم الوحدة الأولى في شرط استخدامات مكتبتك ومشروعك. وذكر هنا أن كلا من مشاريع DLL والمشاريع باستخدام DLL يحتاج إلى الرجوع إلى وحدة حارم.
من الأفضل إضافة وحدات الشريعة إلى المشروع ، لأنه في الاستخدام الفعلي ، يتم تمرير الكائنات في بعض الأحيان بين المشروع و DLL للاستخدام.
2. مشكلة تعريف استدعاء وظيفة DLL:
عند الإخراج في DLL: دالة ABC: iInterface ؛
يتم تعريف مكالمات الوظائف على النحو التالي في البرنامج:
يكتب
TFUNC = INTERFACE ؛
سيحدث خطأ غريب ، يجب تعريفه على أنه نفس الخط المحدد في DLL:
يكتب
tfunc = الدالة: iinterface ؛
3. عند استخدام الواجهة في DLL ، تذكر تعيينها على لا شيء قبل إصدار الكائن في DLL بعد الاستخدام ؛
4. تصحيح DLLs في Delphi: غالبًا ما أواجه المشكلة التي لا يمكنني إضافة نقاط توقف عند تصحيح DLLs. تحقق من الإعدادات الموجودة في DLL ، سواء كان مسار الإخراج الخاص بـ DLL المترجم هو نفسه إعداد مسار البرنامج الرئيسي الذي يستدعي DLL ، ويجب أن يكون مسارًا مطلقًا ؛
5. في "تغليف DLL وتكنولوجيا الكائنات في دلفي" ، فإن القيد الرئيسي لـ DLL على كائنات التغليف هو
؟
2. . .
3. . .
يبدو أنه لا يوجد مثل هذا القيود على كيفية استخدام الكائنات في البرنامج الرئيسي لـ DLLs ، أتساءل لماذا؟