/linkresource (ссылка на ресурс платформы .NET Framework) (параметры компилятора C#)
Обновлен: Ноябрь 2007
Создает в выходном файле ссылку на ресурс платформы .NET Framework. Файл ресурсов не добавляется в выходной файл. Этот параметр отличается от параметра /resource, который внедряет файл ресурсов в выходной файл.
/linkresource:filename[,identifier[,accessibility-modifier]]
Аргументы
filename
Файл ресурсов платформы .NET Framework, ссылку на который из сборки необходимо создать.identifier (необязательный)
Логическое имя ресурса, используемое для его загрузки. По умолчанию используется имя файла.accessibility-modifier (необязательный)
Доступность ресурса: "public" (открытый) или "private" (закрытый). Значение по умолчанию — "public" (открытый).
Заметки
По умолчанию связанные ресурсы в сборке открыты, если они создавались с помощью компилятора C#. Чтобы сделать ресурс закрытым, укажите параметр private в качестве модификатора доступности. Модификаторы, отличные от public или private, не допускаются.
Параметр /linkresource требует одного из параметров /target, отличного от /target:module.
Если filename является файлом ресурсов платформы .NET Framework, созданным, например, с помощью Resgen.exe или в среде разработки, то к нему можно обращаться с помощью членов пространства имен System.Resources. Дополнительные сведения см. в разделе System.Resources.ResourceManager. Чтобы получить доступ ко всем остальным ресурсам во время выполнения, используйте методы GetManifestResource в классе Assembly.
Файл, указанный в параметре filename, может иметь любой формат. Например, может потребоваться сделать имеющуюся на компьютере библиотеку DLL частью сборки, поэтому ее можно разместить в глобальном кэше сборок и обеспечить к ней доступ из управляемого кода сборки. Во втором из следующих примеров показывается, как это сделать. Это действие можно также выполнить в компоновщике сборок. В третьем из следующих примеров показывается, как это сделать. Дополнительные сведения см. в разделах Компоновщик сборок (Al.exe) и Работа со сборками и глобальным кэшем сборок.
/linkres является короткой формой /linkresource.
Этот параметр компилятора недоступен в среде разработки Visual Studio и не может быть изменен программным способом.
Пример
Скомпилируйте in.cs и создайте ссылку на файл ресурсов rf.resource:
csc /linkresource:rf.resource in.cs
Скомпилируйте A.cs в библиотеку DLL, создайте ссылку на машинную библиотеку N.dll и поместите выходные данные в глобальный кэш сборок (GAC). В этом примере оба файла A.dll и N.dll будут расположены в глобальном кэше сборок.
csc /linkresource:N.dll /t:library A.cs
gacutil -i A.dll
В этом примере выполняются те же действия, что и в предыдущем примере, но с использованием параметров компоновщика сборок.
csc /t:module A.cs
al /out:A.dll A.netmodule /link:N.dll
gacutil -i A.dll