Festlegen von Assemblyattributen

Assemblyattribute sind Werte, die Informationen über eine Assembly liefern. Diese Attribute werden nach Art der Information folgendermaßen unterteilt:

  • Assemblyidentitätsattribute

  • Informationsattribute

  • Assemblymanifestattribute

  • Attribute für starke Namen

Assemblyidentitätsattribute

Drei Attribute bestimmen (ggf. zusammen mit einem starken Namen) die Identität einer Assembly: Name, Version und Kultur. Diese Attribute bilden den vollständigen Namen der Assembly und werden benötigt, wenn im Code auf die Assembly verwiesen wird. Sie können Attribute verwenden, um die Version und Kultur einer Assembly anzugeben. Der Compiler oder der Assembly Linker-Tool (Al.exe) setzt beim Erstellen der Assembly den Namenswert basierend auf der Datei fest, die das Assemblymanifest enthält.

Die folgende Tabelle beschreibt die Versions- und Kulturattribute.

Assemblyidentitätsattribut Beschreibung

AssemblyCultureAttribute

Numerisches Feld, das die von der Assembly unterstützte Kultur angibt. Eine Assembly kann auch kulturunabhängig sein. Dies bedeutet, dass sie die Ressourcen für die Standardkultur enthält.

Hinweis

Die Common Language Runtime behandelt jede Assembly, für die das Kulturattribut nicht auf NULL festgelegt ist, als Satellitenassembly. Solche Assemblys unterliegen den Bindungsregeln für Satellitenassemblys. Weitere Informationen finden Sie unter So sucht Common Language Runtime nach Assemblys.

AssemblyFlagsAttribute

Wert, der Assemblyattribute festlegt, z. B. ob die Assembly parallel mit einer anderen ausgeführt werden kann.

AssemblyVersionAttribute

Numerischer Wert im Format major.minor.build.revision. Zum Beispiel 2.4.0.0. Dieser Wert wird von der Common Language Runtime verwendet, um in Assemblys mit starkem Namen Bindungsoperationen durchzuführen.

Im folgenden Beispielcode wird gezeigt, wie Sie die Versions- und Kulturattribute auf eine Assembly anwenden.

'Set version number for the assembly.
<Assembly:AssemblyVersionAttribute("4.3.2.1")>
'Set culture as German.
<Assembly:AssemblyCultureAttribute("de")>
//Set version number for the assembly.
[assembly:AssemblyVersionAttribute("4.3.2.1")]
//Set culture as German.
[assembly:AssemblyCultureAttribute("de")]

Informationsattribute

Sie können Informationsattribute verwenden, um für eine Assembly zusätzliche Unternehmens- oder Produktinformationen zur Verfügung zu stellen. Die folgende Tabelle beschreibt die verschiedenen Informationsattribute, die Sie einer Assembly zuweisen können.

Informationsattribut Beschreibung

AssemblyCompanyAttribute

Zeichenfolgenwert zur Angabe eines Firmennamens.

AssemblyCopyrightAttribute

Zeichenfolgenwert zur Angabe von Copyrightinformationen.

AssemblyFileVersionAttribute

Zeichenfolgenwert zur Angabe der Win32-Dateiversionsnummer. Standardmäßig ist dieser Wert für die Assemblyversion voreingestellt.

AssemblyInformationalVersionAttribute

Zeichenfolgenwert zur Angabe von Versionsinformationen, die von der Common Language Runtime nicht verwendet werden, z. B. die vollständige Produktversionsnummer.

AssemblyProductAttribute

Zeichenfolgenwert zur Angabe von Produktinformationen.

AssemblyTrademarkAttribute

Zeichenfolgenwert zur Angabe von Markeninformationen.

Diese Attribute können auf der Windows-Eigenschaftenseite der Assembly angezeigt werden. Sie können sie jedoch auch unter Verwendung der Compileroption /win32res überschreiben, um eine eigene Win32-Ressourcendatei anzugeben.

Assemblymanifestattribute

Wenn Sie Assemblymanifestattribute verwenden, können Sie im Assemblymanifest Informationen zur Verfügung stellen, einschließlich Titel, Beschreibung, Standardalias und Konfiguration. Die folgende Tabelle enthält eine Beschreibung der Assemblymanifestattribute.

Assemblymanifestattribute Beschreibung

AssemblyConfigurationAttribute

Zeichenfolgenwert zur Angabe der Assemblykonfiguration, z. B. Verkaufs- oder Debugversion. Dieser Wert wird von der Common Language Runtime nicht verwendet.

AssemblyDefaultAliasAttribute

Zeichenfolgenwert zur Angabe des Standardalias, der beim Verweisen von Assemblys verwendet wird. Dieser Wert stellt auch einen angezeigten Namen bereit, falls der Assemblyname selbst kein angezeigter Name ist (sondern z. B. ein GUID-Wert). Dieser Wert kann außerdem als Kurzform des vollständigen Assemblynamens verwendet werden.

AssemblyDescriptionAttribute

Zeichenfolgenwert zur Angabe einer kurzen Beschreibung von Art und Zweck der Assembly.

AssemblyTitleAttribute

Zeichenfolgenwert zur Angabe eines angezeigten Namens für die Assembly. Beispielsweise könnte eine Assembly mit dem Namen comdlg denn Namen Microsoft Common Dialog Control haben.

Attribute für starke Namen

Sie können Attribute für starke Namen verwenden, um einer Assembly einen starken Namen zuzuweisen. Die folgende Tabelle enthält eine Beschreibung solcher Attribute.

Attribute für starke Namen Beschreibung

AssemblyDelaySignAttribute

Boolescher Wert, der angibt, ob verzögertes Signieren eingesetzt wird.

AssemblyKeyFileAttribute

Zeichenfolgenwert zur Angabe des Namens der Datei, die entweder (bei verzögertem Signieren) nur den öffentlichen Schlüssel oder den öffentlichen und den privaten Schlüssel enthält, wobei im letzten Fall beide als Parameter dem Konstruktor dieses Attributs übergeben wurden. Beachten Sie, dass der Dateiname vom Pfad der Ausgabedatei (.exe oder .dll) und nicht von dem der Quelldatei abhängig ist.

AssemblyKeyNameAttribute

Gibt den Schlüsselcontainer an, der das an den Konstruktor dieses Attributs als Parameter übergebene Schlüsselpaar enthält.

Im folgenden Beispielcode wird gezeigt, welche Attribute Sie einsetzen müssen, wenn Sie verzögertes Signieren zur Erstellung einer Assembly mit starkem Namen unter Verwendung einer Datei mit öffentlichem Schlüssel mit dem Namen myKey.snk einsetzen.

      <Assembly:AssemblyKeyFileAttribute("myKey.snk")>
      <Assembly:AssemblyDelaySignAttribute(True)>
      [assembly:AssemblyKeyFileAttribute(@"..\..\myKey.snk")]
      [assembly:AssemblyDelaySignAttribute(true)]

Siehe auch

Konzepte

Erstellen von Assemblys

Weitere Ressourcen

Programmieren mit Assemblys