Entwickler-Ecke
Sonstiges (.NET) - Excel-Interop, TYPE_E_LIBNOTREGISTERED
Webo - Fr 05.12.14 11:23
Titel: Excel-Interop, TYPE_E_LIBNOTREGISTERED
Hallo zusammen,
ich sitze an einem Excel-Interop-Problem. Diverse Tools (C# und VB) greifen mithilfe der Excel-Interop Schnittstelle auf Excel-Dateien zu. Dieses funktioniert in der Regel auch einwandfrei (Standardmäßig wird Office 2007 verwendet, also Object Library 12.0). Auf einigen Rechnern kommt es zu folgender Exception:
Zitat: |
Das COM-Objekt des Typs "Microsoft.Office.Interop.Excel.ApplicationClass" kann nicht in den Schnittstellentyp "Microsoft.Office.Interop.Excel._Application" umgewandelt werden. Dieser Vorgang konnte nicht durchgeführt werden, da der QueryInterface-Aufruf an die COM-Komponente für die Schnittstelle mit der IID "{000208D5-0000-0000-C000-000000000046}" aufgrund des folgenden Fehlers nicht durchgeführt werden konnte: Bibliothek nicht registriert. (Ausnahme von HRESULT: 0x8002801D (TYPE_E_LIBNOTREGISTERED)). |
Der Fehler tritt an folgender Stelle auf (beim Öffnen des Workbooks):
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22:
| Excel.Workbook workbook = null; Excel.Worksheet worksheet = null; Excel.Application excelApp = null; Excel.Range range = null;
try { excelApp = new Excel.Application(); workbook = excelApp.Workbooks.Open( file, 0, false, System.DBNull.Value, System.DBNull.Value, System.DBNull.Value, System.DBNull.Value, System.DBNull.Value, System.DBNull.Value, System.DBNull.Value, System.DBNull.Value, System.DBNull.Value, System.DBNull.Value); |
Der Zugriff auf das excelApp-Objekt funkioniert im Debugger, was mich ein wenig verwundert. Anscheinend findet er die Bibliothek (denn das Objekt kann er ja erzeugen), damit arbeiten funktioniert aber nicht so richtig.
Ich habe bereits den GAC überprüft, hier scheint alles in Ordnung zu sein. Auch kann man die Software auf den entsprechenden Rechnern im VS übersetzen, sodass die Bibliothek generell gefunden wird. So richtig weiter weiß ich da nicht.
Einige Rechner lässt sich ist in dem Fall auch genau spezifizieren: Auf diesen Rechnern sind neben dem Office 2007 Paket auch noch ein Project Professional 2013 installiert - prinzipiell liegt also als Begriff "überschriebene Einstellungen/Pfade" in der Luft :?
Kennt jemand dieses Problem oder hat eine Idee woran es liegen könnte?
Viele Grüße,
Webo
Webo - Mi 08.04.15 11:32
Hallo,
irgendwie ist mir nach meinen weiteren Versuchen völlig entgangen hier auch über das Ergebnis zu berichten :oops:
Das rumhantieren in der Registry war nur teilweise erfolgreich, da es aber nach jedem Office-Update wieder auf den defekten Ursprungszustand gesetzt wurde, ist das so oder so keine praktikable Lösung.
Mit NetOffice hingegen ist das Problem gelöst, der Wrapper sucht sich ganz offensichtlich den korrekten Pfad zu den Bibliotheken raus - auch sonst sehr angenehm, kann ich nur weiterempfehlen das Projekt :D
Viele Grüße,
Webo
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!