Installieren eine Assembly im globalen Assemblycache in Visual Basic .NET oder Visual Basic 2005

Eine Microsoft Visual C# .NET Version dieses Artikels finden Sie unter
815808 .

IN DIESER AUFGABE

Zusammenfassung

Dieser Artikel beschreibt das Generieren eines starken Namens für eine Assembly und eine DLL-Datei im globalen Assemblycache installieren. Global Assembly Cache (GAC) können Sie Assemblys zahlreiche anwendungsübergreifend gemeinsam nutzen. .NET Runtime ist im GAC installiert. Komponenten werden normalerweise im C:\WINNT\Assembly gespeichert.

Um eine Assembly im GAC installieren, Sie geben der Assembly einen starken (d. h. global eindeutiger) Namen. Eigentlich ist es keinen Namen, aber einer kryptografischen Hash-Schlüssel oder Signatur. Der starke Name gewährleistet Versioning richtige Komponente Komponenten verhindert mit dem gleichen Namen Konflikte mit einander oder falsch verwendeten Anwendung verwendet wird.

Voraussetzungen

Der folgenden Liste sind die empfohlene Hardware, Software, Netzwerkinfrastruktur, Qualifikationen und wissen und die erforderlichen Servicepacks:
  • Administratorrechte für den Computer auf dem freigegebene Assembly installiert wird
Erforderliche Vorkenntnisse:
  • Allgemeine Vertrautheit mit Assemblys in .NET
  • Allgemeine Vertrautheit mit Tools von der Befehlszeile

Global Assemblycache

Erstellen einer kleinen Klassenbibliotheksprojekt mit Visual Studio .NET oder Visual Studio 2005 zum Generieren eines starken Namens und DLL-Datei des Projekts im globalen Assemblycache installieren, gehen Sie folgendermaßen vor:
  1. Öffnen Sie Visual Studio .NET oder Visual Studio 2005.
  2. Erstellen Sie ein neues Klassenbibliotheksprojekt mit dem Namen
    GAC in Visual Basic .NET oder Visual Basic 2005.
  3. Ein starker Name ist erforderlich. Um dieses kryptografische Schlüsselpaar verwenden Sie das SN-Tool im Unterverzeichnis \bin befindet, auf dem.NET Framework Solution Developer Kit (SDK) installiert. Das SN-Tool ist sehr einfach zu verwenden. Die Befehlszeile-Anweisung hat folgende Form:
    sn -k "C:\[DirectoryToPlaceKey]\[KeyName].snk"
  4. Der Einfachheit halber erstellen Sie ein Verzeichnis namens
    GACDemo in C:\, damit Sie den Schlüssel suchen und über die Befehlszeile auf den Schlüssel zugreifen können.

    Hinweis: für die meisten Benutzer .NET Tools in C:\Program Files\Microsoft.NET\FrameworkSDK\Bin befinden. Vor dem Eingeben des Befehls SN möchten Sie kopieren diese ähnlichen Pfad auf Ihrem Computer in das Verzeichnis Bin .NET Geben Sie cd über die Befehlszeile Rechtsklicken, um den Pfad einfügen, drücken Sie schnell das Verzeichnis ändern, in dem das SN-Tool befindet.

    Geben Sie Folgendes ein:
    sn -k "C:\GACDemo\GACkey.snk"
    Hinweis In.NET Framework 2.0 befinden sich .NET Tools im Ordner C:\Program Files\Microsoft.NET\SDK\v2.0\Bin.
  5. Ein Schlüssel generiert, aber noch nicht mit der Assembly des Projekts. Um diese Zuordnung zu erstellen, doppelklicken Sie auf die Datei AssemblyInfo.vb in Visual Studio .NET oder Visual Studio 2005-Projektmappen-Explorer. Fügen Sie Folgendes zu der Liste der Assemblyattribute standardmäßig beim Erstellen eines Projekts in Visual Studio .NET oder Visual Studio 2005 ist in dieser Datei enthalten sind:
    < Assembly: AssemblyKeyFile("C:\GACDemo\GACKey.snk") >
    Kompilieren Sie das Projekt, indem Sie auf STRG + UMSCHALT + B. Kein weiterer Code muss zu diesem Zeitpunkt um eine DLL-Datei im GAC zu installieren.
  6. Sie können die DLL-Datei mit dem Gacutil Tool oder ziehen die DLL-Datei in das entsprechende Verzeichnis. Wenn Sie Gacutil-Tool verwenden, können Sie den folgenden Befehl:
    Gacutil – I "C:\[PathToBinDirectoryInVSProject]\gac.dll"
    Wenn Sie die Datei ziehen möchten, verwenden Sie Microsoft Windows Explorer. Öffnen Sie zwei Instanzen von Windows Explorer. Navigieren Sie zum Speicherort der DLL-DateiAusgabe der Konsolenprojekt. Navigieren Sie in der anderen c:\[SystemRoot]\Assembly.

    Ziehen Sie DLL-Datei in den Ordner.

Der vollständige Code aufgelistet (AssemblyInfo.vb)

Imports System.ReflectionImports System.Runtime.InteropServices

<Assembly: AssemblyTitle("")>
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("")>
<Assembly: AssemblyProduct("")>
<Assembly: AssemblyCopyright("")>
<Assembly: AssemblyTrademark("")>
<Assembly: CLSCompliant(True)>
<Assembly: AssemblyKeyFile("C:\GACDemo\GACKey.snk")>

<Assembly: Guid("E3492A62-5389-4286-94A3-1331CC29EA6D")>
<Assembly: AssemblyVersion("1.0.*")>

Überprüfung

  1. Starten Sie Windows Explorer.
  2. Navigieren Sie zu C:\WINNT\assembly.
  3. Suchen Sie in der Liste installierter GAC.

REFERENZEN

Weitere Informationen finden Sie auf der folgenden Microsoft-Websites:
Installieren einer Assembly im globalen Assemblycache
http://msdn2.microsoft.com/en-us/library/dkkx7f79(vs.71).aspx

Eigenschaften

Artikelnummer: 315682 – Letzte Überarbeitung: 21.01.2017 – Revision: 1

Feedback