次の方法で共有


StrongNameSignatureGeneration 関数

指定したアセンブリに対して厳密な名前の署名が生成されます。

この関数は非推奨とされています。 代わりに、ICLRStrongName::StrongNameSignatureGeneration メソッドを使用してください。

構文

BOOLEAN 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 でない場合は、共通言語ランタイムで署名が返される領域が割り当てられます。 呼び出し元では、StrongNameFreeBuffer 関数を使用して、この領域を解放する必要があります。

pcbSignatureBlob
[out] 返された署名のサイズ (バイト単位)。

戻り値

正常に完了した場合は true。それ以外の場合は false

解説

署名を作成せずに署名のサイズを計算するには、wszFilePath に null を指定します。

署名はファイルに直接格納するか、呼び出し元に返すことができます。

StrongNameSignatureGeneration 関数が正常に完了しない場合、StrongNameErrorInfo 関数を呼び出し、最後に生成されたエラーを取得します。

必要条件

:システム要件」を参照してください。

ヘッダー: StrongName.h

ライブラリ: リソースとして MsCorEE.dll に含まれている

.NET Framework のバージョン: 1.0 以降で使用可能

関連項目