كيفية إصلاح خطأ OLE 8004013F على Linux



جرب أداة القضاء على المشاكل

إذا كنت تحاول تشغيل أي نوع من قاعدة البيانات أو الماكرو في بيئة قائمة على Wine على أي نوع من تطبيقات GNU / Linux ، فقد تواجه نوعًا من رسائل الخطأ. في مرحلة ما أثناء تدفق البرنامج ، قد ترى في النهاية ملف خطأ OLE 8004013F صندوق. سيتوقف البرنامج النصي الخاص بك عن التنفيذ فورًا. إذا حدث هذا ، فمن المرجح أنك تفتقد مكتبة يحتاج النص البرمجي إلى تشغيلها. في عميل Windows الأصلي ، تُستخدم هذه المكتبات لمطابقة الكائنات الموجودة داخل الملفات مع مضيفها الأصلي. لا يمتلك Linux هذه الإمكانية ، لأن كل برنامج يعمل في خادم X يدير الأشياء بطريقته الخاصة.



ضمن بيئة Microsoft Windows الأصلية ، يمكن لدلفي استخدام جزء صغير من التعليمات البرمجية لفتح Excel. إذا كنت تريد أن يعمل مثيل Excel مضمن ومرتبط مع كائنات مختلفة ، فربما تكون قد استخدمت eclApp: = CreateOleObject ('Excel.Application') ؛ لنفعل ذلك. داخل Linux ، ربما حاولت استخدام OpenOffice بهذه الطريقة. يجب أن تجد دلفي ترمي اللعين 8004013F خطأ بعد محاولتك إنشاء كائن OLE بمثيل من eclApp: = CreateOleObject ('com.sun.star.ServiceManager') ؛ مقتطف ، فأنت على الأرجح تعاني من نفس مشكلة التبعية. أولاً ، انظر إلى الكود الخاص بك بحثًا عن أي أخطاء إملائية. هذه هي أكثر أسباب الأخطاء شيوعًا حتى قبل تضمين التبعيات. بمجرد التأكد من أنك كتبت كل شيء بشكل صحيح ، وبعد ذلك يمكنك المتابعة لاستعادة المكتبات المطلوبة.



مكتبات OLE الضرورية

قد تواجه أيضًا نفس الخطأ إذا كنت تحاول استخدام تطبيق منظم Windows يسمى keynote-nf ، وإذا كان الأمر كذلك ، فيمكنك استخدام نفس العملية لعلاجه. لا يأتي ملف keynote.exe مع أداة التثبيت ، لذلك من الشائع نسخه إلى دليل Program Files. أثناء تشغيله ، قد تواجه خطأ 8004013F المذكور أعلاه أو استثناء 80004001 مختلف. في كلتا الحالتين ، أنشئ دليلًا داخل Program Files باستخدام الأمر mkdir أو مدير الملفات الرسومي. أطلق عليه KeyNote-NF ، وانقل الملف الثنائي keynote.exe إليه.



إذا كان بإمكانك الوصول إلى قسم Windows XP أو Vista أو 7 أو 8 أو 8.1 أو 10 ، فقد ترغب في محاولة نسخ ملف msftedit.dll من ج: Windows system32 الدليل إلى دليل KeyNote-NF الذي أنشأته. يجب عليك أيضًا نسخ ملف msls31.dll. يمكنك الحصول على كلاهما من قرص التثبيت المضغوط أيضًا ، ولكنك ستحتاج إلى استخدام الأمر التوسيع لتضخيمهما. في كلتا الحالتين ، قم بتشغيل البرنامج وستجد أنه يعمل بشكل جيد.



سيعرف Thunar و Nautilus ومديرو الملفات الآخرون المشابهون keynote.exe كملف DOS قابل للتنفيذ ، والذي يمكنك تجاهله بأمان. ببساطة قم بتشغيله كما كنت تفعل من قبل. عند النقر بزر الماوس الأيمن للوصول إلى قائمة السياق ، قد تحصل بالفعل على خيار يشجعك على تشغيلها ضمن Wine. حدد هذا الخيار لبدء تشغيله. سيؤدي تشغيل البرنامج من الجهاز بدلاً من ذلك إلى السماح لك برؤية أي رسائل خطأ قد تظهر رؤوسهم في هذه العملية. في بعض الحالات ، قد تحصل بالفعل على تحذير بشأن اسم ملف مختلف عن msftedit.dll أو msls31.dll ، والذي يجب عليك الحصول عليه بدلاً من ذلك. تمامًا مثل حفرة أرنب التبعية في نظام يونكس ، يمكنك نظريًا قضاء بعض الوقت في الحصول على دليل مليء بملفات مختلفة.

عندما تواجه نفس المشكلة مع Excel أو شفرة دلفي ، انتقل إلى الدليل الذي يحتوي على الملف القابل للتنفيذ الذي تحاول تشغيله ووضع ملفي المكتبة المرتبطين ديناميكيًا في هذا الدليل. يمكنك منح Wine حق الوصول الكامل إلى هذه عن طريق وضعها ~ / .wine / drive_c / Windows / system32 أيضًا ، ولكن هذا قد يؤدي إلى استبدال بعض الملفات التي يقوم Wine بتثبيتها افتراضيًا.

نظرًا لأن مكتبات DLL هذه تتفوق في بعض النواحي على الحلول مفتوحة المصدر التي يستخدمها Wine ، فيمكنها أيضًا المساعدة في ربط الكائنات في البرامج الأخرى التي قد تقوم بتشغيلها ، لكن العديد من المستخدمين لا يحبون فكرة تلويث تثبيت Linux الخاص بهم بمصدر مغلق الملفات. أفضل طريقة لحل هذه المشكلة هي وضعها في الدلائل التي تستخدمها برامجك بالفعل. يمكنك أيضًا إنشاء أدلة لملحقات Windows الفعلية التي نسختها من قسم آخر. على سبيل المثال ، يواجه بعض المستخدمين هذه الأنواع من المشكلات إذا كانوا يستخدمون نصًا برمجيًا أو كود دلفي لبدء مثيلات الدفتر التقليدية. ربما قام Wine بتثبيت الإصدار الخاص به من write.exe ، ولكن لا يوجد ما يمنعك من إنشاء دليل في '~ / .wine / drive_c / Program Files /' ووضع write.exe و msftedit.dll و msls31.dll إليه ، ثم الرجوع إلى هذا الدليل بالرمز الخاص بك. نظرًا لأن Wine يتضمن إصدارًا بدائيًا من مترجم cmd من Microsoft Windows NT ، يمكنك أيضًا الرجوع إلى هذه البرامج في ملفات البرامج النصية الدفعية إذا كنت تفضل ذلك. تأكد من إدخالها بـECHO OFF ، وإلا سيظهر كل أمر كما لو كنت كتبته في سطر أوامر ثم ضغطت على Enter لتنفيذه واحدًا تلو الآخر.

تقدم العديد من المواقع على الإنترنت كائنات DLL للتنزيل ، وقد يكون من المغري استخدام أحد هذه المستودعات إذا لم يكن لديك تثبيت Windows على قسم آخر. على الرغم من أنها قد تكون مريحة حقًا ، تأكد من إجراء فحص للبرامج الضارة على msftedit.dll و msls31.dll إذا كنت مضطرًا للحصول عليها بهذه الطريقة. يجب ألا تعامل هذه المستودعات بنفس الطريقة التي تتعامل بها مع المستودعات الرسمية التي ترعاها مشاريع Ubuntu و Debian و Fedora.

ضع في اعتبارك أيضًا أنك إذا اضطررت إلى الحصول عليها بهذه الطريقة ، فقد يتسبب ذلك في مخاوف بشأن الترخيص إذا كنت تعيد توزيع شفرتك. لا تقم بتثبيت أي ملف تنفيذي يسأل عنه أي مستودع من هذا القبيل ، نظرًا لأن هذه الملفات التنفيذية غالبًا ما تكون نوعًا من البرامج الإعلانية المصممة للتأثير على مستخدمي بيئات برامج Microsoft Windows الرسمية الفعلية. ينطبق الأمر نفسه على أي حالة قد يُطلب منك فيها تنزيل عدد من المكتبات المختلفة خارج هذين ، حيث يمكن أن تقع فريسة لنفس النوع من غزو البرامج الإعلانية.

4 دقائق للقراءة