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


Метод ICLRStrongName::StrongNameSignatureGenerationEx

Создает подпись строгого имени для указанной сборки в соответствии с указанными флагами.

Синтаксис

HRESULT StrongNameSignatureGenerationEx (  
    [in]  LPCWSTR   wszFilePath,  
    [in]  LPCWSTR   wszKeyContainer,  
    [in]  BYTE      *pbKeyBlob,  
    [in]  ULONG     cbKeyBlob,  
    [out] BYTE      **ppbSignatureBlob,  
    [out] ULONG     *pcbSignatureBlob,  
    [in]  DWORD     dwFlags  
);  

Параметры

wszFilePath
[in] Путь к файлу, который содержит манифест сборки, для которой будет создана подпись строгого имени.

wszKeyContainer
[in] Имя контейнера ключей, содержащего пару открытого и закрытого ключей.

Если pbKeyBlob имеет значение NULL, wszKeyContainer необходимо указать допустимый контейнер в поставщике служб шифрования (CSP). В этом случае для подписывания файла используется пара ключей, хранящейся в контейнере.

Если pbKeyBlob значение не равно NULL, предполагается, что пара ключей содержится в большом двоичном объекте ключа (BLOB).

pbKeyBlob
[in] Указатель на пару открытого и закрытого ключей. Эта пара имеет формат, созданный функцией Win32 CryptExportKey . Если pbKeyBlob имеет значение NULL, предполагается, что контейнер ключей, указанный параметром wszKeyContainer , содержит пару ключей.

cbKeyBlob
[in] Размер (в байтах) объекта pbKeyBlob.

ppbSignatureBlob
[out] Указатель на расположение, в которое среда CLR возвращает сигнатуру. Если ppbSignatureBlob имеет значение NULL, среда выполнения сохраняет сигнатуру в файле, указанном параметром wszFilePath.

Если ppbSignatureBlob значение не равно NULL, среда CLR выделяет пространство для возврата подписи. Вызывающий объект должен освободить это пространство с помощью метода ICLRStrongName::StrongNameFreeBuffer .

pcbSignatureBlob
[out] Размер возвращаемой сигнатуры (в байтах).

dwFlags
[in] Одно или несколько из следующих значений:

  • SN_SIGN_ALL_FILES (0x00000001) — перекомпьютер всех хэшей для связанных модулей.

  • SN_TEST_SIGN (0x00000002) — проверка подписи сборки.

Возвращаемое значение

S_OK значение , если метод успешно завершен; В противном случае — значение HRESULT, указывающее на сбой (см. общие значения HRESULT для списка).

Комментарии

Укажите значение NULL для , wszFilePath чтобы вычислить размер подписи без создания сигнатуры.

Подпись может быть сохранена непосредственно в файле или возвращена вызывающей объекту.

Если SN_SIGN_ALL_FILES указан параметр , но открытый ключ не включен (оба pbKeyBlob и wszFilePath имеют значение NULL), хэши для связанных модулей вычисляются повторно, но сборка не подписывается повторно.

Если SN_TEST_SIGN указан параметр , заголовок среды CLR не изменяется, чтобы указать, что сборка подписана строгим именем.

Требования

Платформы: см. раздел Требования к системе.

Заголовка: MetaHost.h

Библиотека: Включается в качестве ресурса в MSCorEE.dll

версии платформа .NET Framework: доступно с 4

См. также раздел