Frage

Ich habe einige Addins aus dem System.addin. Aber beim Ausführen der addinStore.reBuild,

string[] warnings = AddInStore.Rebuild(addInRoot);

Dann bekomme ich eine Warnzeichenfolge zurück:

Die Datei ist keine gültige Binärdatei: D: ak as ConverterDodule output addins CompositeFileZip 7z.dll Dateiname: D: ak as ConverterterDoDule output addins Composi ...

Die 7z.dll ist nicht die Addin -Baugruppe, sondern die 7Z -Datei, die das CompositeFileZIP -Addin verwendet. Ich kann nicht ganz herausfinden, was genau die Wiederaufbaufunktion tut. Versucht es, die 7z.dll als Addin hinzuzufügen?

War es hilfreich?

Lösung

Ich bin mit System.addin oder der 7Z -Komponente nicht vertraut, sondern eine sehr häufige Ursache von BadImageFormatException versucht, eine Baugruppe zu laden, die als 64-Bit (oder abhängig von einem nativen 64-Bit-DLL) auf einem 32-Bit-System markiert ist, oder umgekehrt.

Überprüfen Sie, ob Sie 7z.dll und seine Abhängigkeiten sind für dieselbe Architektur wie das System gebaut, in dem Sie das sehen BadImageFormatException. Sie können dies von einer Visual Studio -Eingabeaufforderung tun, indem Sie die Header für die Ablagerung für 7z.dll und auf der Suche nach der Maschinenarchitektur:

    C:\Program Files\7-Zip>dumpbin /headers 7z.dll | findstr /i machine
            8664 machine (x64)
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top