更新 : 2011 年 4 月
指定されたアセンブリの厳密な名前の署名を生成します。
HRESULT StrongNameSignatureGeneration (
[in] LPCWSTR wszFilePath,
[in] LPCWSTR wszKeyContainer,
[in] BYTE *pbKeyBlob,
[in] ULONG cbKeyBlob,
[out] BYTE **ppbSignatureBlob,
[out] ULONG *pcbSignatureBlob
);
パラメーター
wszFilePath
[入力] 厳密な名前の署名を生成するアセンブリのマニフェストを含むファイルへのパス。wszKeyContainer
[入力] 公開キーと秘密キーのペアを含むキー コンテナーの名前。pbKeyBlob が null の場合は、wszKeyContainer は暗号化サービス プロバイダー (CSP: Cryptographic Service Provider) 内の有効なコンテナーを指定する必要があります。 この場合、コンテナーに格納されているキーのペアを使用してファイルが署名されます。
pbKeyBlob が null でない場合は、キーのペアはキーのバイナリ ラージ オブジェクト (BLOB) に格納されていると見なされます。
キーは、1024 ビット RSA (Rivest-Shamir-Adleman) 署名キーである必要があります。 これ以外のキーは、現時点ではサポートされていません。
pbKeyBlob
[入力] 公開キーと秘密キーのペアへのポインター。 このペアは、Win32 CryptExportKey 関数で作成される形式になっています。 pbKeyBlob が null の場合は、wszKeyContainer によって指定されたキー コンテナーにキーのペアが格納されていると見なされます。cbKeyBlob
[入力] pbKeyBlob のサイズ (バイト単位)。ppbSignatureBlob
[出力] 共通言語ランタイムが署名を返す場所へのポインター。 ppbSignatureBlob が null の場合、ランタイムは wszFilePath によって指定されたファイルに署名を格納します。ppbSignatureBlob が null でない場合は、共通言語ランタイムは署名を返す領域を割り当てます。 呼び出し元は ICLRStrongName::StrongNameFreeBuffer メソッドを使用して、この領域を解放する必要があります。
pcbSignatureBlob
[出力] 返された署名のサイズ (バイト単位)。
戻り値
メソッドが正常に完了した場合は S_OK、それ以外の場合は失敗を示す HRESULT 値 (一覧については「Common HRESULT Values (一般的な HRESULT 値)」を参照)。
解説
署名のサイズの計算のみを行い、署名の作成を行わない場合は、wszFilePath に null を指定します。
署名は、ファイルに直接格納することも、呼び出し元に返すこともできます。
要件
プラットフォーム: 「.NET Framework システム要件」を参照
ヘッダー: MetaHost.h
ライブラリ: MSCorEE.dll にリソースとして格納されていること
.NET Framework のバージョン: 4
参照
参照
その他の技術情報
ICLRStrongName::StrongNameSignatureGenerationEx メソッド
履歴の変更
日付 |
履歴 |
理由 |
---|---|---|
2011 年 4 月 |
戻り値を修正 |
コンテンツ バグ修正 |
2010 年 7 月 |
トピックを追加 |
情報の拡充 |