Laden...

Keine Win32 Anwendung-Meldung beim Erstellen einer Word Instance (Version Home & Business 2013)

Erstellt von Baumunk77 vor 7 Jahren Letzter Beitrag vor 7 Jahren 3.686 Views
B
Baumunk77 Themenstarter:in
41 Beiträge seit 2014
vor 7 Jahren
Keine Win32 Anwendung-Meldung beim Erstellen einer Word Instance (Version Home & Business 2013)

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.BadImageFormatException

Die 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

16.835 Beiträge seit 2008
vor 7 Jahren

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.

H
523 Beiträge seit 2008
vor 7 Jahren

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)".

B
Baumunk77 Themenstarter:in
41 Beiträge seit 2014
vor 7 Jahren

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.

16.835 Beiträge seit 2008
vor 7 Jahren

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...?

W
196 Beiträge seit 2008
vor 7 Jahren

Tu Dir selbst einen gefallen und verwende einen versionsunabhängigen Wrapper für den Zugriff auf Office...

NetOffice

16.835 Beiträge seit 2008
vor 7 Jahren

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.