ICLRStrongName::StrongNameSignatureGeneration メソッド
指定したアセンブリに対して厳密な名前の署名が生成されます。
構文
HRESULT StrongNameSignatureGeneration (
[in] LPCWSTR wszFilePath,
[in] LPCWSTR wszKeyContainer,
[in] BYTE *pbKeyBlob,
[in] ULONG cbKeyBlob,
[out] BYTE **ppbSignatureBlob,
[out] ULONG *pcbSignatureBlob
);
パラメーター
wszFilePath
[in] 厳密な名前の署名が生成されるアセンブリのマニフェストを格納するファイルへのパス。
wszKeyContainer
[in] 公開キーと秘密キーの組を格納するキー コンテナーの名前。
pbKeyBlob
が null の場合は、wszKeyContainer
で暗号化サービス プロバイダー (CSP) 内の有効なコンテナーを指定する必要があります。 この場合、コンテナーに格納されているキーの組がファイルの署名に使用されます。
pbKeyBlob
が null でない場合は、キーの組がキーのバイナリ ラージ オブジェクト (BLOB) に格納されていると見なされます。
キーは 1024 ビットの RSA (Rivest-Shamir-Adleman) 署名キーである必要があります。 現時点では、他の種類のキーはサポートされていません。
pbKeyBlob
[in] 公開キーと秘密キーの組へのポインター。 この組は、Win32 CryptExportKey
関数で作成される形式です。 pbKeyBlob
が null の場合は、wszKeyContainer
で指定されたキー コンテナーにキーの組が格納されていると見なされます。
cbKeyBlob
[in] pbKeyBlob
のサイズ (バイト単位)。
ppbSignatureBlob
[out] 共通言語ランタイムから署名が返される場所へのポインター。 ppbSignatureBlob
が null の場合は、wszFilePath
で指定されたファイルに署名が格納されます。
ppbSignatureBlob
が null でない場合は、共通言語ランタイムで署名が返される領域が割り当てられます。 呼び出し元は、ICLRStrongName::StrongNameFreeBuffer メソッドを使用して、この領域を解放する必要があります。
pcbSignatureBlob
[out] 返された署名のサイズ (バイト単位)。
戻り値
メソッドが正常に完了した場合は S_OK
、それ以外の場合は失敗を示す HRESULT 値 (リストについては、一般的な HRESULT 値に関するページを参照)。
解説
署名を作成せずに署名のサイズを計算するには、wszFilePath
に null を指定します。
署名はファイルに直接格納するか、呼び出し元に返すことができます。
必要条件
:「システム要件」を参照してください。
ヘッダー: MetaHost.h
ライブラリ: MSCorEE.dll にリソースとして含まれます
.NET Framework のバージョン: 4 以降で使用可能
関連項目
.NET