ICLRStrongName::StrongNameSignatureGenerationEx 메서드
업데이트: 2011년 4월
지정된 플래그에 따라 지정된 어셈블리의 강력한 이름 서명을 생성합니다.
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(Binary Large Object)에 포함되어 있다고 가정합니다.
pbKeyBlob
[in] 공개/개인 키 쌍에 대한 포인터입니다. 이 쌍은 Win32 CryptExportKey 함수에 의해 만들어진 형식을 갖습니다. pbKeyBlob가 null이면 wszKeyContainer에서 지정하는 키 컨테이너가 해당 키 쌍을 포함하는 것으로 가정됩니다.cbKeyBlob
[in] pbKeyBlob의 크기(바이트)입니다.ppbSignatureBlob
[out] 공용 언어 런타임이 서명을 반환하는 위치에 대한 포인터입니다. ppbSignatureBlob가 null이면 런타임은 wszFilePath에 지정된 파일에 서명을 저장합니다.ppbSignatureBlob가 null이 아니면 공용 언어 런타임은 서명을 반환할 공간을 할당합니다. 호출자는 ICLRStrongName::StrongNameFreeBuffer 메서드를 사용하여 이 공간을 확보해야 합니다.
pcbSignatureBlob
[out] 반환된 시그니처의 크기(바이트)입니다.dwFlags
[in] 다음 값 중에서 하나 이상을 입력합니다.SN_SIGN_ALL_FILES(0x00000001) - 링크된 모듈에 대한 모든 해시를 다시 계산합니다.
SN_TEST_SIGN(0x00000002) - 어셈블리 서명을 테스트합니다.
반환 값
메서드가 성공적으로 완료될 경우 S_OK이며, 그 이외의 경우 실패를 나타내는 HRESULT 값입니다(목록에 대한 공통 HRESULT 값 참조).
설명
시그니처를 만들지 않고 시그니처의 크기를 계산하려면 wszFilePath에 대해 null을 지정합니다.
시그니처를 파일에 직접 저장하거나 호출자에게 반환할 수 있습니다.
SN_SIGN_ALL_FILES를 지정하고 공개 키를 포함하지 않은 경우(pbKeyBlob와 wszFilePath가 모두 null임) 링크된 모듈의 해시는 다시 계산되지만 어셈블리는 다시 서명되지 않습니다.
SN_TEST_SIGN을 지정한 경우 어셈블리가 강력한 이름으로 서명되었음을 나타내도록 공용 언어 런타임 헤더는 수정되지 않습니다.
요구 사항
플랫폼: .NET Framework 시스템 요구 사항 참조
헤더: MetaHost.h
라이브러리: MSCorEE.dll에 리소스로 포함됨
.NET Framework 버전: 4
참고 항목
참조
기타 리소스
ICLRStrongName::StrongNameSignatureGeneration 메서드
변경 기록
날짜 |
변경 내용 |
이유 |
---|---|---|
2011년 4월 |
반환 값을 수정했습니다. |
콘텐츠 버그 수정 |
2010년 7월 |
항목이 추가되었습니다. |
향상된 기능 관련 정보 |