سؤال

انا لدي مشكلة. سأحاول شرح ذلك.

لدي وحدة لها فئة وقد يكون لها وظائف جديدة.

d3bf4e84995249b990f802efb1f15 unitfile1.pas 8dc8977e7a7b469aacfe3cc77ca7075e unitfile1

كلاهما لهما نفس الفئة: iclass_1 = الفئة

أنا باستخدام أرقام التعليمات البرمجية لإصدارات مختلفة من هذا الملف.

يستخدم ملف وحدة آخر (UNITFILE2.PAS) ملف الوحدة هذا (UNITFILE1.PAS).

أيضًا ، يحتوي ملف الوحدة الثاني (UNITFILE2.PAS) على إصدارات مختلفة.

F94C439C822E490DB228F2C16C190 UNITFILE2.PAS 14CEEFAFF1D64DDD8CBDEDD334D4A3FF UNITFILE2.PAS

كلاهما لهما نفس الفئة: ICLASS_2 = الفئة (ICLASS_1)

الآن تبدأ المشكلة ؛

"F94C439C822E490DB228F2C16C16C190 UNITFILE2.PAS" يحتاج "D3BF4E849ACC45249B990F802EFB1F15 UNITFILE1.PAS"

"14ceefaff1d64ddddddddedd334d4a3ff unitfile2.pas" يحتاج "8dc8977e7a7b469aacfe3cc77ca7075e unitfile1.pas"

لكن أسماء الملفات هي نفسها (أحتاج إلى نظام مثل هذا. لذلك فهي متشابهة). وفي ملف الوحدة ، لا تسمح لي Delphi بالكتابة هكذا ؛

في ملف F94C439C822E490DB228F2C16C190 UNITFILE2.PAS ؛ يستخدم Unitfile1 في 'D3BF4E849ACC45249B990F802EFB1F15 UNITFILE1.PAS' ؛

آمل أن أتمكن من قول مشكلتي. كيف يمكنني إخبار برنامج التحويل البرمجي عن ملف الوحدة الذي أريد استخدامه مع مساره؟ (أنا أستخدم Delphi-7)

هل كانت مفيدة؟

المحلول

امنح أسماء وحدتك أسماء مختلفة ، يمكنك بعد ذلك تضمين كلتا الوحدتين في المشروع.

ثم استخدم وحدة الاسم المستعار في خيارات مشروعك لإنشاء "اسم وحدة افتراضية" يحل إلى واحد أو آخر من هذه الوحدات الفعلية. في الوحدات التي "تستخدم" واحدة أو أخرى من هذه المرجعين من قبل الوحدة الاسم المستعار - "الاسم الافتراضي".

على سبيل المثال في كوريا الديمقراطية:

  uses
    ...
    UnitFile1a in '....\UnitFile1a.pas',
    UnitFile1b in '....\UnitFile1b.pas',
    ...

في وحداتك:

   uses
     UnitFile1;

في خيارات مشروعك ، تم تسوية وحدة الاسم المستعار إما:

   UnitFile1=UnitFile1a

أو

   UnitFile1=UnitFile1b

يمكنك بعد ذلك بناء مشروعك مع أي "unitfile1؟" الوحدة مناسبة ببساطة عن طريق تغيير الاسم المستعار للوحدة.

نصائح أخرى

يجب عليك تكوين خيارات المشروع الخاصة بك لوضع "D3BF4E849ACC45249B990F802EFB1F15" و "F94C439C822E490DB228F2C16C190" في مسارات البحث. لا يمكنك تحديد مسارات الوحدة في الكود.

لست متأكدًا مما إذا كان هذا يحل مشكلتك ، ولكن هناك مفهوم مساحات الأسماء ، مما يتيح لك وضع النقاط في أسماء الوحدات مثل هذا:

بدلاً من وجود اسم الملف نفسه في دلائل مختلفة ...

d3bf4e84995249b990f802efb1f15 unitfile1.pas 8dc8977e7a7b469aacfe3cc77ca7075e unitfile1

F94C439C822E490DB228F2C16C190 UNITFILE2.PAS 14CEEFAFF1D64DDD8CBDEDD334D4A3FF UNITFILE2.PAS

يمكنك استخدام بادئة اسم الملف:

D3BF4E849ACC45249B990F802EFB1F15.UNITFILE1.PAS 8DC8977E7A7B469AACFE3CC77CA7075E.UNITFILE1.PAS

F94C439C822E490DB228F2C16C190.UNITFILE2.PAS 14CEEFAFF1D64DDD8CBDEDD334D4A3FF.UNITFILE2.PAS

يمكنك بعد ذلك استخدام أسماء الملفات الكاملة في جملة الاستخدامات ، على سبيل المثال:

uses
  D3BF4E849ACC45249B990F802EFB1F15.UnitFile1;

نعم ، هذا يعمل مع Delphi 7.

على حد علمي ، لا يمكنك إضافة وحدتين بنفس الاسم إلى مشروع.

يمكنك إضافة المجلد الصحيح إلى خيارات المشروع ، أو يمكنك إضافة الوحدات اللازمة إلى "عرض - مدير المشروع" شاشة (انقر بزر الماوس الأيمن على اسم المشروع واختر 'يضيف'. اختر الوحدة الصحيحة في ال المجلد الصحيح, ومن بينه يمكنك استخدام اسم الوحدة فقط في كل نموذج ووحدة أخرى في مشروعك.

لماذا تريد استخدام أسماء المجلدات الخفية هذه هي حقًا خارج عني. لا أستطيع التفكير في أي سبب من الأسباب التي تجعلك ترغب في القيام بذلك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top