Ich habe eine Assembly im .net-Framework erstellt, die ich im GAC veröffentlichen gacutil
möchte, aber ich kann die Utlity nicht finden .
Ich habe eine Weile gegoogelt und viele Vorschläge gefunden, aber nichts funktioniert:
- Kopieren Sie die Assemby nach% window% \ Assemby
[DOES NOT WORK]
- Kopieren Sie die Assembly nach% window% \ Microsoft.NET \ Assembly
[DOES NOT WORK]
- C: \ Programme \ Microsoft SDKs \ Windows \ v6.0A \ Bin \ gacutil.exe / i "Assembly"
[returns an error: this assembly is built by a runtime newer than the currently loaded runtime and cannot be loaded]
Hat jemand eine Idee, dies zu lösen?
VS 2012/13 Win 7 64 Bit gacutil.exe befindet sich in
quelle
In der .net 4.0-Standardinstallation ist kein Gacutil enthalten. Sie haben auch den GAC von% Windir% \ Assembly nach% Windir% \ Microsoft.NET \ Assembly verschoben.
Sie haben sich nicht einmal die Mühe gemacht, eine "spezielle Ansicht" für den Ordner im Windows Explorer hinzuzufügen, wie dies für den .net 1.0 / 2.0 GAC der Fall ist.
Gacutil ist Teil des Windows SDK. Wenn Sie es also auf Ihrem Entwicklungscomputer verwenden möchten, installieren Sie einfach das Windows SDK für Ihre aktuelle Plattform. Dann finden Sie es irgendwo wie folgt (abhängig von Ihrer SDK-Version):
Hier wird über das neue GAC diskutiert: .NET 4.0 hat ein neues GAC, warum?
Wenn Sie etwas in GAC auf einem Produktionscomputer installieren möchten, müssen Sie dies mit einem Windows-Installationsprogramm auf die "richtige" Weise tun (gacutil war nie als Tool zum Installieren von Inhalten auf Produktionsservern gedacht, sondern nur als Entwicklungstool). oder mit anderen Werkzeugen. Sie können dies z. B. mit PowerShell und der System.EnterpriseServices-DLL tun.
Auf einer allgemeinen Kenntnis, und aus mehrjähriger Erfahrung kommen, würde ich persönlich empfehlen dringend , gegen GAC überhaupt verwenden. Ihre Anwendung funktioniert immer, wenn Sie die DLL auch für jede Anwendung in ihrem Bin-Ordner bereitstellen. Ja, Sie erhalten mehrere Kopien der DLL auf Ihrem Server, wenn Sie beispielsweise mehrere Webanwendungen auf einem Server haben. Es lohnt sich jedoch auf jeden Fall, eine Anwendung zu aktualisieren, ohne die anderen zu beschädigen (indem Sie eine inkompatible Version der freigegebenen Version einführen DLL im GAC).
quelle
Es gibt jetzt tatsächlich ein GAC-Dienstprogramm für .NET 4.0. Es befindet sich im Microsoft Windows 7- und .NET 4.0-SDK (das SDK unterstützt mehrere Betriebssysteme - nicht nur Windows 7 - wenn Sie also ein späteres Betriebssystem von Microsoft verwenden, stehen die Chancen gut, dass es unterstützt wird).
Dies ist das SDK . Sie können die ISO herunterladen oder eine Webinstallation durchführen. Eine Art Overkill, um das Ganze herunterzuladen, wenn Sie nur das GAC Util wollen. es funktioniert jedoch.
quelle