Поделиться через


/linkresource (параметры компилятора C#)

Создает в выходном файле ссылку на ресурс платформы .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

См. также

Задачи

Практическое руководство. Изменение свойств проекта и параметров конфигурации

Ссылки

Al.exe (компоновщик сборок)

Другие ресурсы

Параметры компилятора C#

Работа со сборками и глобальным кэшем сборок