Gacutil.exe fügt Assembly erfolgreich hinzu, aber Assembly nicht sichtbar in Explorer. Warum?
Ich bin mit GacUtil.exe innerhalb von Visual Studio-Eingabeaufforderung 2010 zum registrieren einer dll (CatalogPromotion.dll) in den GAC. Nachdem Sie das Dienstprogramm ausführen, es sagt Assembly Successfully added to the cache
und läuft gacutil /l CatalogPromotionDll
zeigt, dass der GAC enthält die Montage, aber ich kann nicht sehen Sie die Montage, wenn ich navigieren Sie zu C:\WINDOWS\assembly aus dem Windows-Explorer. Warum kann ich nicht sehen, der Versammlung in WINDOWS\assembly aus dem Windows-Explorer, aber ich kann sehen, dass es mit gacutil.exe?
Hintergrund: Hier ist was ich eingegeben in der Eingabeaufforderung für die VS-Tools:
C:\_Dev Projekte\VS Projekte\bmccormack\CatalogPromotion\CatalogPromotionDll\bin \Debug>gacutil /i CatalogPromotionDll.dll Microsoft (R) .NET Global Assembly Cache Utility. Version 4.0.30319.1 Copyright (c) Microsoft Corporation. Alle Rechte vorbehalten. Montage erfolgreich zum cache Hinzugefügt C:\_Dev Projekte\VS Projekte\bmccormack\CatalogPromotion\CatalogPromotionDll\bin \Debug>gacutil /l CatalogPromotionDll Microsoft (R) .NET Global Assembly Cache Utility. Version 4.0.30319.1 Copyright (c) Microsoft Corporation. Alle Rechte vorbehalten. Der Global Assembly Cache enthält folgende Baugruppen: CatalogPromotionDll, Version=1.0.0.0, Culture=neutral, PublicKeyToken=9188a175 f199de4a, processorArchitecture=MSIL Anzahl der Elemente = 1
Jedoch die Versammlung nicht zeigen, bis in C:\WINDOWS\assembly.
InformationsquelleAutor der Frage Ben McCormack | 2010-06-16
Du musst angemeldet sein, um einen Kommentar abzugeben.
Denn Sie verwenden den .NET 4.0-version gacutil.exe. Es speichert die Montage in einem verschiedenen GAC, der in c:\windows\microsoft.net\assembly. Wo alle .NET 4.0 assemblies gespeichert werden. Es gibt keine shell extension handler für, dass man die Ordner sichtbar sind. Sie können einen Blick-sehen Sie mit dem Windows Explorer .du wirst sehen, die interne Struktur des GAC Ordner. Sie sollten keine Schwierigkeiten haben, finden Sie Ihre Versammlung zurück, der GAC ist nicht besonders kompliziert.
Wenn die assembly verwendet werden soll, durch eine app, die Ziele einer früheren version .NET dann sollten Sie die .NET 2.0-version gacutil.exe gespeichert C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin
InformationsquelleAutor der Antwort Hans Passant
Dies ist, weil die Montage-Sie werden die Installation in den GAC wurde zusammengestellt Ausrichtung der 4.0-Laufzeit. 4.0 GAC assemblies werden in einem anderen Speicherort gespeichert c:\windows\microsoft.net\assembly.
Die akzeptierte Antwort ist falsch. Mit Hilfe der .NET 4.0 gacutil installieren eine assembly kompiliert targeting 3.5 oder früher Laufzeit funktioniert, und platzieren Sie die assembly in das Verzeichnis der OP erwartet hatte, c:\windows\assembly.
InformationsquelleAutor der Antwort gravidThoughts
Den Pfad -> C:\Windows\Microsoft.NET\assembly\GAC_MSIL wo alle Assemblys abgelegt werden .net 4.0 version
InformationsquelleAutor der Antwort bijitm