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


-keyfile

Указывает файл, содержащий пару ключей или ключей, чтобы дать сборке строгое имя.

Синтаксис

-keyfile:file

Аргументы

file Обязательно. Файл, который содержит ключ. Если имя файла содержит пробел, заключите имя в кавычки (" ").

Замечания

Компилятор вставляет открытый ключ в манифест сборки, а затем подписывает окончательную сборку закрытым ключом. Чтобы создать файл ключа, в командной строке введите sn -k file. Дополнительные сведения см. в разделеSn.exe (средство строгого имени)).

При компиляции -target:moduleимя файла ключа хранится в модуле и включается в сборку, созданную при компиляции сборки с помощью -addmodule.

Вы также можете передать данные шифрования компилятору с помощью -keycontainer. Используйте -delaysign , если требуется частично подписанная сборка.

Этот параметр можно также указать в качестве пользовательского атрибута (AssemblyKeyFileAttribute) в исходном коде для любого модуля общего промежуточного языка.

-keyfile Если оба и -keycontainer заданы (по параметру командной строки или по пользовательскому атрибуту) в одной компиляции, компилятор сначала пытается использовать контейнер ключей. В случае успеха сборка подписывается данными контейнера ключей. Если компилятор не находит контейнер ключей, он пытается использовать указанный файл -keyfile. В случае успешного выполнения сборка подписывается сведениями в файле ключа, а сведения о ключе устанавливаются в контейнер ключей (аналогично sn -i) так, чтобы в следующей компиляции контейнер ключей был допустимым.

Обратите внимание, что файл ключа может содержать только открытый ключ.

Дополнительные сведения о подписи сборки см. в статье "Создание и использование сборок Strong-Named ".

Замечание

Этот -keyfile параметр недоступен в среде разработки Visual Studio. Он доступен только при компиляции из командной строки.

Пример

Следующий код компилирует исходный файл Input.vb и задает файл ключа.

vbc -keyfile:myfile.sn input.vb

См. также