/linkresource (C#-Compileroptionen)

Erstellt einen Link zur .NET Framework-Ressource in der Ausgabedatei Die Ressourcendateien wird nicht in die Ausgabedatei eingefügt. Dies ist ein Unterschied zur Option /resource, die eine Ressourcendatei in die Ausgabedatei einbettet.

Syntax

/linkresource:filename[,identifier[,accessibility-modifier]]  

Argumente

filename
Die Ressourcendatei von .NET Framework, die Sie mit der Assembly verknüpfen möchten

identifier (optional)
Der logische Name der Ressource. Der Name, mit dem die Ressource geladen wird. Der Standardwert ist der Name der Datei.

accessibility-modifier (optional)
Barrierefreiheit der Ressource: öffentlich oder privat. Der Standardwert ist „öffentlich“.

Hinweise

Verknüpfte Ressourcen sind standardmäßig in der Assembly öffentlich, wenn sie mit den C#-Compiler erstellt werden. Geben Sie private als Modifizierer der Barrierefreiheit an. Außer public und private sind keine anderen Modifizierer zulässig.

/linkresource erfordert eine der /target-Optionen, die nicht /target:module sind.

Wenn es sich bei filename um eine .NET Framework-Ressourcendatei handelt, die beispielsweise von resgen.exe oder in der Entwicklungsumgebung erstellt wurde, ist der Zugriff mit Membern im System.Resources-Namespace möglich. Weitere Informationen finden Sie unter System.Resources.ResourceManager. Verwenden Sie für alle anderen Ressourcen die GetManifestResource*-Methoden in der Assembly-Klasse, um zur Laufzeit auf die Ressource zuzugreifen.

Die in filename angegebene Datei kann jedes Format haben. Sie können z.B. eine native DLL zu einem Teil der Assembly machen, sodass sie im globalen Assemblycache installiert und aus verwaltetem Code in der Assembly darauf zugegriffen werden kann. Das zweite Beispiel zeigt die dazu erforderliche Vorgehensweise. Sie können dasselbe aber auch im Assemblylinker vornehmen. Das dritte Beispiel zeigt die dazu erforderliche Vorgehensweise. Weitere Informationen finden Sie unter Al.exe (Assembly Linker-Tool) und Arbeiten mit Assemblys und dem globalen Assemblycache.

/linkres ist die verkürzte Form der Option /linkresource.

Diese Compileroption steht in Visual Studio nicht zur Verfügung und kann auch nicht programmgesteuert angepasst werden.

Beispiel

Kompilieren Sie in.cs und verknüpfen Sie die Ressourcendatei rf.resource:

csc /linkresource:rf.resource in.cs  

Beispiel

Kompilieren Sie A.cs in eine DLL, verknüpfen Sie eine native DLL „n.dll“, und fügen Sie die Ausgabe in den globalen Assemblycache (GAC) ein. In diesem Beispiel befinden sich sowohl „a.dll“ als auch „n.dll“ im GAC.

csc /linkresource:N.dll /t:library A.cs  
gacutil -i A.dll  

Beispiel

In diesem Beispiel wird das Gleiche wie im vorherigen Beispiel erreicht, allerdings mithilfe von Assemblylinkeroptionen.

csc /t:module A.cs  
al /out:A.dll A.netmodule /link:N.dll   
gacutil -i A.dll  

Siehe auch

C#-Compileroptionen
Al.exe (Assembly Linker-Tool)
Arbeiten mit Assemblys und dem globalen Assemblychache
NIB: Gewusst wie: Ändern von Projekteigenschaften und Konfigurationseinstellungen