Bei einem unseren Kunde auf einem Platz
Kann unsere Anwendung keine neue Instance von Office Anwendungen erstellen,
wird Word z.B: so aufgerufen:
Microsoft.Office.Interop.Word.Application wordapp = new Microsoft.Office.Interop.Word.Application();
kommt immer wieder:
Fehlermeldung:
System.BadImageFormatExceptionDie COM-Klassenfactory für die Komponente mit CLSID {000209FF-0000-0000-C000-000000000046} konnte aufgrund des folgenden Fehlers nicht abgerufen werden: 800700c1 ist keine zulässige Win32-Anwendung. (Ausnahme von HRESULT: 0x800700C1).
Office ist 32-Bit, unsere Anwendung ist auch x86 Kompiliert.
Komisch wenn Word schon gestartet und bestehende Word Instance genommen wird:
wordapp = System.Runtime.InteropServices.Marshal.GetActiveObject("Word.Application") as Word.Application;
Ist alles I.o.
Was auch komisch ist, das Office trotzt 32 bit im Ordner c:\Programm installiert ist.
Technik sagt das es aber bei Home und Business normal....
Alle andere Plätze, wo gleich installiert ist, alle OK?
Hat jemand Idee woran es liegen kann
BadIMageFormat ist eine sehr deutliche Meldung, dass irgendwas eben nicht x86 ist (oder umgekehrt, wenn ihr x64 nehmen müsst eben nicht x64 ist).
Irgendwo ist also noch was krumm.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Hast Du Dich im Task-Manager vergewissert, dass Office wirklich 32-Bit ist?
Mein 32-Bit-Office unter Windows 8.1 64-Bit liegt im Verzeichnis "C:\Program Files (x86)".
Hast Du Dich im Task-Manager vergewissert, dass Office wirklich 32-Bit ist?
.
Ja Info zu Word zeigt auch 32-bit.
Bei mir liegt Office auch in Programme(x86), ich habe jedoch Professional Plus version.
Bei Home & Business ist das anders, da liegt Office in Programme. Hab mich auch erst start gewundert, ist aber so.
Wir öffnen der Fall Microsoft, sollen Sie uns doch mal das erklären.
Für sowas nen Fall bei Microsoft eröffnen.... ooookay 🤔
Ich seh da aktuell in erster Linie euch in der Verantwortung.
zB gibt es Tools wie den DependencyWalker, der euch hier weitere Informationen geben kann, was ihr wirklich ausführt.
Der Fehler 800700c1 ist eigentlich - wie bereits gesagt - sehr deutlich (und nicht unbekannt)....
Ich würde fast wetten, dass ihr irgendwo ein Projekt statt auf x86 auf Any CPU habt.
Von was ruft ihr die Anwendung auf... Webanwendung, Desktop...?
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Man sollte sich aber auch den gefallen tun und sich NetOffice und den Hintergrund sowie dessen Aussagen für sich selbst zu evaluieren.
Nicht nur blind die paar Vorteile sehen 😃
Das Projekt scheint zudem nicht mehr aktiv gepflegt zu werden. Der Autor hat zwar noch Akivitäten auf CodePlex aber die Code Historie zeigt, dass seit August 2015 nichts mehr gemacht wurde. Issues sind unkommentiert.
Auf Twitter sieht man von NetOffice zudem eigentlich nur Stänkereien gegen Personen oder Unternehmen... aber das muss jeder für sich selbst entscheiden.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code