В настоящее время вы работаете в автономном режиме; ожидается повторное подключение к Интернету

Установка сборки в глобальный кэш сборок в Visual C#

ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.

Эта статья на английском языке: 815808
Для этой версии Microsoft Visual Basic .NET в статье, см. 315682.

В ЭТОЙ ЗАДАЧЕ

Аннотация
В данной статье описывается создание строгого имени сборка и установка файл DLL в глобальный кэш сборок (GAC). В глобальном кэше СБОРОК совместного использования сборок во множестве приложений. Находится в глобальном кэше СБОРОК автоматически устанавливается вместе со средой выполнения .NET. Обычно хранятся компоненты в C:\WINNT\Assembly.

Чтобы установить сборку в глобальный кэш СБОРОК, необходимо присвоить строгое имя сборки. Имя является хэш ключа шифрования или подписи. Это строгое имя гарантирует правильное управление версиями компонентов. Это помогает предотвратить компоненты из конфликтующих друг с другом или с одинаковыми именами неправильно используется много приложением.

к началу статьи

Требования

В следующем списке представлены рекомендуемого оборудования, программного обеспечения, сетевой инфраструктуры и пакетов обновления, которые необходимы:
  • Права администратора на компьютере, где общий сборка установлена

В данной статье предполагается, что вы знакомы с следующие разделы:
  • Общее Знакомство со сборками в .NET.
  • Общее Знакомство с использованием средств командной строки.
к началу статьи

Глобальный кэш сборок

Чтобы создать небольшой проект библиотеки классов с помощью Visual Studio для создания строгого имени и установить DLL-файла в проект глобальный кэш СБОРОК, выполните следующие действия:
  1. В Visual Studio создайте новый Visual C# класс Проект библиотеки и имя проектаGACDemo.
  2. Необходимо использовать строгое имя. Чтобы создать этот криптографии пары ключей, используйте средство SN. Это средство расположено в подкаталоге \bin где установлена платформа.NET Framework решения Developer Kit (SDK). Средство SN простой в использовании. Принимает следующие инструкции командной строки
    "[DriveLetter]:\[DirectoryToPlaceKey]\[KeyName].snk" sn -k
    Примечание В Visual Studio 2005 и более поздних версиях Visual Studio можно использовать свойства проекта для создания пары ключей и подписывания сборки. Затем можно пропустить этапы 3 и 4 и также избежать внесения изменений кода в файл AssemblyInfo.cs.

    Чтобы использовать свойства проекта интегрированная среда разработки для создания пары ключей и подписать сборку, выполните следующие действия.
    1. В обозревателе решений щелкните правой кнопкой мыши GACDemo, а затем нажмите кнопку Свойства.
    2. Нажмите кнопку Подписи на вкладке и выберите Подпишите сборку флажок.
    3. В Выберите ключ строгого имени Выберите <New...></New...>.
    4. Введите GACkey.snk Имя файла ключа, нажмите кнопку '' Очистить Защитить мой файл ключей паролем Установите флажок и нажмите кнопку ОК.
    5. Нажмите сочетание клавиш CTRL + SHIFT + B, чтобы скомпилировать проект.
    После выполнения этих действий по-прежнему необходимо выполнить шаг 5, чтобы установить сборки в глобальном кэше СБОРОК.
  3. Создайте каталог с именем GACKey в C:\, чтобы легко могли найти ключ и получить доступ к ключу в командной строке.

    Примечание Для большинства пользователей средств .NET расположены в C:\Program Files\Microsoft.NET\FrameworkSDK\Bin. Перед введите следующую команду SN необходимо скопировать этот же путь на компьютере .NET ячейки каталог. Введите компакт-диск Щелкните правой кнопкой мыши в командной строке Чтобы вставить путь и нажмите клавишу ВВОД, чтобы быстро перейти в каталог где находится средство SN.

    Введите следующую команду:
    «C:\GACKey\GACkey.snk» sn -k
  4. Ключ создается, но он еще не связан с сборка проекта. Чтобы создать данную взаимосвязь, дважды щелкните значок Файл AssemblyInfo.cs, в обозревателе решений Visual Studio .NET. Этот файл имеет Список атрибутов сборки, включенные по умолчанию при проекта созданный в Visual Studio .NET. Изменить AssemblyKeyFileсборка атрибута в коде следующим образом:
    [сборка: AssemblyKeyFile("C:\\GACKey\\GACKey.snk")]
    Скомпилируйте проект, нажав сочетание клавиш CTRL + SHIFT + B. Нет необходимости иметь никакого дополнительного кода, чтобы установить файл DLL в глобальном кэше СБОРОК.
  5. DLL-файл можно установить с помощью средства Gacutil или При перетаскивании файла .dll в соответствующую папку. Если используется Gacutil средство, можно использовать команду, подобную следующей:
    gacutil -I "[DriveLetter]:\[PathToBinDirectoryInVSProject]\gac.dll"
    Перетащите файл, открыть два экземпляра проводника Windows. В одном экземпляре местоположения выходной файл .dll проекта консоли. Поиск в другом экземпляре c:\[SystemRoot]\Assembly. Перетащите файл DLLСборки папка.
к началу статьи

Полный пример кода (AssemblyInfo.cs)

using System.Reflection;using System.Runtime.CompilerServices;//// General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information// that is associated with an assembly.//[assembly: AssemblyTitle("")][assembly: AssemblyDescription("")][assembly: AssemblyConfiguration("")][assembly: AssemblyCompany("")][assembly: AssemblyProduct("")][assembly: AssemblyCopyright("")][assembly: AssemblyTrademark("")][assembly: AssemblyCulture("")]//// Version information for an assembly is made up of the following four values:////      Major Version//      Minor Version //      Build Number//      Revision//// You can specify all the values, or you can default the revision and build numbers // by using the '*' as shown below:[assembly: AssemblyVersion("1.0.*")]//// To sign your assembly you must specify a key to use. See the // Microsoft .NET Framework documentation for more information about assembly signing.//// Use the following attributes to control that key is used for signing. //// Notes: //   (*) If no key is specified, the assembly is not signed.//   (*) KeyName refers to a key that has been installed in the Crypto Service//       Provider (CSP) on your computer. KeyFile refers to a file that contains//       a key.//   (*) If the KeyFile and the KeyName values are both specified, the //       following processing occurs://       (1) If the KeyName can be found in the CSP, that key is used.//       (2) If the KeyName does not exist and the KeyFile does exist, the key //           in the KeyFile is installed to the CSP and used.//   (*) To create a KeyFile, you can use the sn.exe (Strong Name) utility.//       When specifying the KeyFile, the location of the KeyFile must be//       relative to the project output directory which is//       %Project Directory%\obj\<configuration>. For example, if your KeyFile is//       located in the project directory, you would specify the AssemblyKeyFile //       attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")]//   (*) Delay Signing is an advanced option - see the Microsoft .NET Framework//       documentation for more information about this.//[assembly: AssemblyDelaySign(false)][assembly: AssemblyKeyFile("C:\\GACKey\\GACKey.snk")][assembly: AssemblyKeyName("")]
к началу статьи

Проверка

  1. Запустите проводник Windows.
  2. Найдите C:\SystemRoot\ сборки.
  3. GACDemo вы видите в списке установленных .dll файлы.
Назад сверху
Ссылки
Дополнительные сведения см. ниже веб-узлов корпорации Майкрософт:
Установка сборки в глобальный кэш сборок
.aspx http://msdn2.Microsoft.com/en-us/library/dkkx7f79 (vs.71)
Инструмент глобального кэша сборок
.aspx http://msdn2.Microsoft.com/en-us/library/ex0ss12c (vs.71)
Назад сверху

Внимание! Эта статья переведена автоматически

Свойства

Номер статьи: 815808 — последний просмотр: 03/29/2013 08:41:00 — редакция: 8.0

Microsoft Visual C# 2008 Express Edition, Microsoft Visual C# 2005 Express Edition, Microsoft Visual C# .NET 2003 Standard Edition, Microsoft ASP.NET 1.0, Microsoft ASP.NET 1.1

  • kbcodesign kbcommandline kbnamespace kbhowtomaster kbmt KB815808 KbMtru
Отзывы и предложения