Ich versuche, eine .NET 4.0. DLL zum GAC hinzuzufügen. Ich versuche dies zu tun, weil es von einem Drittanbieter sowohl als 32-Bit- als auch als 64-Bit-DLL veröffentlicht wird, die ich aus verschiedenen Apps auf verschiedenen Plattformen in beiden Formaten verwenden muss.Problem beim Registrieren von ChilkatDotNet4.dll im GAC
Auf jeden Fall habe ich Probleme beim Registrieren dieser DLL auf dem GAC in einer Windows Server 2008-Umgebung.
Ich habe versucht, gacutil.exe (und unterstützende Datei) zu kopieren unter "C: \ Programme (x86) \ Microsoft SDKs \ Windows \ v7.0A \ bin \ NETFX 4.0 Tools" auf meinem lokalen Computer zu dem " C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 "auf dem Zielproduktionsserver gemäß den Vorschlägen here.
Ich versuchte dann, sie in "C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319" zu kopieren.
Die Ausführung von beiden Standorten zeigte eine erfolgreiche Installation an. Und in der Tat scheint die Registrierung erfolgreich:
- C: \ Windows \ Microsoft.NET \ assembly \ GAC_64 \ ChilkatDotNet4 \ v4.0_9.0.8.0__eb5fc1fc52ef09bd \ ChilkatDotNet4.dll
- C: \ Windows \ Microsoft. NET \ assembly \ GAC_32 \ ChilkatDotNet4 \ v4.0_9.0.8.0__eb5fc1fc52ef09bd \ ChilkatDotNet4.dll
Allerdings läuft eine Konsole-Anwendung, die mit der Meldung an den (64bit) Version der DLL-Fehler heraus bezieht:
System.IO.FileNotFoundException: Konnte Datei oder Assembly "ChilkatDotNet4.dll" oder eine seiner Abhängigkeiten nicht laden. Das angegebene Modul konnte nicht gefunden werden. Dateiname:. ‚ChilkatDotNet4.dll‘
So habe ich jetzt manuell folgende GAC Einträge erstellt mkdir verwenden und kopieren Sie von einer Eingabeaufforderung (die nicht wirklich funktionieren kann oder ich habe keine Ahnung, was so ist besondere gacutil.exe):
- C: \ Windows \ Microsoft.NET \ assembly \ GAC_MSIL \ ChilkatDotNet4 \ v4.0_9.0.8.0__eb5fc1fc52ef09bd \ ChilkatDotNet4.dll (die 64-Bit-Version der dLL)
- C: \ Windows \ Assembly \ GAC_64 \ ChilkatDotNet4 \ v4.0_9.0.8.0__eb5fc1fc52ef09bd \ ChilkatDotNet4.dll
- C: \ Windows \ assembly \ GAC_32 \ ChilkatDotNet4 \ v4.0_9.0.8.0__eb5fc1fc52ef09bd \ ChilkatDotNet4.dll
Nach jedem "install" des DLL, die ich getestet und erhielt die gleichen Fehler. Irgendwelche Ideen willkommen!
EDIT: die GAC Ausgabe oben kann eigentlich nicht die Ursache sein. Selbst wenn ich ein brandneues Console-App-Projekt erstelle und die .dll-Datei direkt hinzufüge (so dass sie im Bin liegt), kann ich sie immer noch nicht auf dem Server ausführen. Außerdem habe ich festgestellt, dass Konsolen-Apps auf das .NET 4.0-Clientprofil und nicht auf .NET Framework 4 ausgerichtet sind. Wenn ich versuche, das Targeting auf das Clientprofil auszuführen, scheint keine der System.Web * -Bibliotheken verfügbar zu sein . Allerdings habe ich versucht, eine sehr einfache Test-App für beide Targeting ausgeführt und keiner würde auf dem Server beim Verweis auf die schlechte .dll ausgeführt werden.
Gibt es eine spezielle Art von Installation, die ausgeführt werden sollte, um .NET 4.0 Console-Apps auszuführen?
+1 Vielen Dank !!! –