Linux'ta OLE Hatası 8004013F Nasıl Onarılır



Sorunları Ortadan Kaldırmak Için Enstrümanımızı Deneyin

Herhangi bir tür GNU / Linux uygulamasında Wine tabanlı bir ortamda herhangi bir tür veritabanı veya makroyu çalıştırmaya çalışıyorsanız, bir tür hata mesajı alabilirsiniz. Program akışı sırasında bir noktada, nihayetinde bir OLE Hatası 8004013F Kutu. Betiğiniz daha sonra yürütmeyi hemen durduracaktır. Bu gerçekleşecekse, büyük olasılıkla komut dosyanızın çalıştırması gereken bir kitaplığı kaçırıyorsunuzdur. Yerel bir Windows istemcisinde, bu kitaplıklar dosyaların içindeki nesneleri üst ana bilgisayarlarıyla eşleştirmek için kullanılır. Bir X Sunucusunda çalışan her program işleri kendi yöntemleriyle yönettiği için Linux bu özelliğe sahip değildir.



Yerel bir Microsoft Windows ortamında Delphi, Excel'i açmak için küçük bir kod parçası kullanabilir. Gömülü ve bağlantılı bir Excel örneğinin farklı nesnelerle çalışmasını istiyorsanız, eclApp: = CreateOleObject ('Excel.Application'); böyle yaparak. Linux içinde, OpenOffice'i bu şekilde kullanmayı bile denemiş olabilirsiniz. Delphi'yi dehşete düşüren bulmalısın 8004013F bir OLE nesnesi oluşturmaya çalıştıktan sonra hata eclApp: = CreateOleObject ('com.sun.star.ServiceManager'); snippet, o zaman muhtemelen aynı bağımlılık sorunu yaşıyorsunuzdur. İlk olarak, herhangi bir yazım hatası olup olmadığını görmek için kodunuza bakın. Bunlar, bağımlılıklar dahil olmadan önce bile hataların en yaygın nedenleridir. Her şeyi doğru yazdığınızdan emin olduktan sonra gerekli kitaplıkları kurtarmaya devam edebilirsiniz.



Gerekli OLE Kitaplıkları

Aynı hatayı, keynote-nf adlı bir Windows düzenleyici uygulamasını kullanmaya çalışıyorsanız da yaşayabilirsiniz ve bu durumda, sorunu çözmek için aynı işlemi kullanabilirsiniz. Keynote.exe dosyası bir yükleyiciyle birlikte gelmez, bu nedenle onu Program Dosyaları dizinine kopyalamak yaygındır. Çalışabilirken, yukarıda bahsedilen 8004013F hatasıyla veya farklı bir 80004001 istisnasıyla karşılaşabilirsiniz. Her iki durumda da, mkdir komutuyla veya grafik dosya yöneticinizle Program Dosyaları içinde bir dizin oluşturun. Buna KeyNote-NF adını verin ve keynote.exe ikili dosyasını üzerine taşıyın.



Windows XP, Vista, 7, 8, 8.1 veya 10 bölümüne erişiminiz varsa, msftedit.dll dosyasını şuradan kopyalamayı deneyebilirsiniz. C: Windows system32 yaptığınız KeyNote-NF dizinine. Ayrıca msls31.dll dosyasını da kopyalamanız gerekir. Bunların her ikisini de bir kurulum CD'sinden edinebilirsiniz, ancak bunları şişirmek için genişletme komutunu kullanmanız gerekir. Her iki durumda da programı çalıştırın ve iyi çalıştığını görmelisiniz.



Thunar, Nautilus ve diğer benzer dosya yöneticileri, keynote.exe'yi güvenle yok sayabileceğiniz bir DOS yürütülebilir dosyası olarak tanımlayacaktır. Daha önce yaptığınız gibi çalıştırın. Bir içerik menüsüne erişmek için sağ tıkladığınızda, aslında sizi Şarap altında çalıştırmaya teşvik eden bir seçenek alabilirsiniz. Başlamak için bu seçeneği seçin. Bunun yerine programı terminalden çalıştırmak, işlem sırasında başlarını döndürebilecek herhangi bir hata mesajını görmenize olanak sağlar. Bazı durumlarda, msftedit.dll veya msls31.dll'den farklı bir dosya adı hakkında bir uyarı alabilirsiniz, bunun yerine almanız gerekir. Bir Unix bağımlılığı tavşan deliğine benzer şekilde, teorik olarak farklı dosyalarla dolu bir dizini edinmek için biraz zaman harcayabilirsiniz.

Excel veya Delphi koduyla aynı sorunu yaşıyorsanız, çalıştırmaya çalıştığınız yürütülebilir dosyayı içeren dizine gidin ve dinamik olarak bağlantılı iki kitaplık dosyasını bu dizine yerleştirin. Wine'a bunları yerleştirerek bunlara tam erişim verebilirsiniz. ~ / .wine / drive_c / Windows / system32 aynı zamanda, ancak bu, Wine'ın varsayılan olarak yüklediği bazı dosyaların üzerine yazabilir.

Bu DLL'ler, Wine'ın kullandığı açık kaynaklı çözümlerden bazı yönlerden üstün olduklarından, çalıştırabileceğiniz diğer programlardaki nesnelerin bağlanmasına da yardımcı olabilirler, ancak birçok kullanıcı Linux kurulumlarını kapalı kaynakla kirletme fikrinden hoşlanmaz. Dosyalar. Bunları yalnızca programlarınızın gerçekte kullandığı dizinlere koymak, bu sorunu çözmenin en iyi yoludur. Hatta başka bir bölümden kopyaladığınız gerçek Windows aksesuarları için dizinler bile oluşturabilirsiniz. Örneğin, bazı kullanıcılar geleneksel WordPad örneklerini başlatmak için bir bash komut dosyası veya Delphi kodu kullanıyorlarsa bu tür sorunları yaşarlar. Wine, write.exe'nin kendi sürümünü yüklemiş olabilir, ancak sizi şurada bir dizin oluşturmaktan alıkoyan hiçbir şey yoktur '~ / .Wine / drive_c / Program Dosyaları /' ve buna write.exe, msftedit.dll ve msls31.dll yerleştirildikten sonra kodunuzla bu dizine başvurulur. Wine, Microsoft Windows NT'den cmd yorumlayıcısının ilkel bir sürümünü içerdiğinden, isterseniz bu programlara Toplu iş dosyası dosyalarında da başvurabilirsiniz. Bunlara @ECHO OFF ile önsöz verdiğinizden emin olun, aksi takdirde her komut, bir komut satırına yazmışsınız gibi görünecek ve ardından birbiri ardına yürütmek için enter tuşuna bastınız.

İnternetteki pek çok site indirilmek üzere DLL nesneleri sunar ve başka bir bölümde Windows kurulumunuz yoksa bu depolardan biriyle gitmek cazip gelebilir. Gerçekten kullanışlı olsalar da, msftedit.dll ve msls31.dll üzerinde kötü amaçlı yazılım taraması yaptığınızdan emin olun. Bu depolara, Ubuntu, Debian ve Fedora projeleri tarafından desteklenen resmi depolarla aynı şekilde davranmamalısınız.

Bunları bu şekilde edinmeye zorlanırsanız, kodunuzu yeniden dağıtıyorsanız bunun lisans endişelerine neden olabileceğini de unutmayın. Bu tür bir havuzun sorduğu herhangi bir yürütülebilir dosyayı yüklemeyin, çünkü bu yürütülebilir dosyalar genellikle gerçek resmi Microsoft Windows yazılım ortamlarının kullanıcılarını etkilemek için tasarlanmış bir reklam yazılımı türüdür. Aynı şey, bu ikisinin dışında bir dizi farklı kitaplık indirmeniz gereken her durum için de geçerlidir, çünkü bunlar aynı türden reklam yazılımı istilasının kurbanı olabilir.

4 dakika okundu