Ich versuche, eine 32-Bit-Anwendung (als x86) auf einer 64-Bit-Maschine ausgeführt. Ich habe es als x86 gebaut, weil es ein 32-Bit-com-Objekt verwendet. Bis ich das getan habe, konnte die App die com nicht laden. Jetzt lädt es die com, aber beschwert sich, dass es microsoft.mshltml Assembly nicht finden kann. Diese Assembly wird von einer der (.net) Abhängigkeiten verwendet.32-Bit-App kann mshtml Assembly nicht finden, während auf 64-Bit-Maschine
Die Fehlermeldung lautet:
System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.mshtml, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
Couldn't find File name: 'Microsoft.mshtml, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'
ich diese Versammlung registriert sowohl unter CLSID sehen können und unter WOW3264NodeCLSID. Es wird jedoch nicht in dem Windows \ Assembly-Verzeichnis gefunden.
Ich habe versucht, die DLL von dem Computer zu kopieren, ich baute die App auf und legte in das App-Verzeichnis. Als ich dann versucht habe, die App auszuführen, habe ich einen Sicherheitsfehler bezüglich starker Namensgebung erhalten. Ich habe den Fehler gegoogelt und festgestellt, dass die Assembly zum GAC hinzugefügt werden sollte. Ich habe versucht, es durch Ziehen der DLL in \windows\assembly
zu tun, aber das hat auch nicht funktioniert. Es gab mir eine Fehlermeldung über private \ public key.
I aktiviert Bindung Protokollierung und das ist, was ich bekommen:
=== Pre-bind Zustandsinformationen ===
LOG: DisplayName = Microsoft.mshtml, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
(Fully-specified)
LOG: Appbase = file:///C:/DT/IEService/bin/Debug32bit/
LOG: Initial PrivatePath = NULL
Calling assembly : HTMLConverter, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6ec4c8772a0842ff.
LOG: This bind starts in default load context.
LOG: Using application configuration file: C:\DT\IEService\bin\Debug32bit\ServiceConsole.exe.Config
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v2.0.50727\config\machine.config.
LOG: Post-policy reference: Microsoft.mshtml, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
LOG: The same bind was seen before, and was failed with hr = 0x80070002.
Was soll ich tun? Jede Hilfe wird mehr als nur geschätzt.
Ich habe meinen Beitrag bearbeitet, indem ich die verbindliche Protokollierung hinzugefügt habe. Ist das genug? –
Das Protokoll sieht so aus, als hätten Sie fuslogvw gestartet, nachdem die App bereits ausgeführt wurde. Stellen Sie sicher, dass Sie alle Bindungen ausführen und protokollieren. –