ファイル '<ファイル>' は署名されていませんでした

ファイル '<ファイル>' は署名されていませんでした配置プロジェクトには、推奨されていない署名プロパティが含まれています。詳細については、ヘルプを参照してください。

Visual Studio 2003 以前で使用できた署名機能は、セットアップおよび配置プロジェクト (セットアップ プロジェクト、Web セットアップ プロジェクト、CAB プロジェクト、マージ モジュール) から削除されました。 署名を有効にした Visual Studio 2003 プロジェクトを Visual Studio 2005 にインポートする場合、または配置プロジェクトで署名を有効にする場合は、ビルド後のイベントで、Signtool.exe (Windows プラットフォーム SDK 内のアセンブリ署名ツール) を使用してビルド出力のファイルに署名する必要があります。 詳細については、「SignTool.exe (署名ツール)」を参照してください。

単純な例では、圧縮しないファイルがなく、ブートストラップ アプリケーション (setup.exe) と、ビルドによって出力されたパッケージ ファイル (Windows インストーラー パッケージ、.cab ファイル、またはマージ モジュール) の両方または一方だけがあります。 今回の例では、ビルド後のイベントのダイアログ ボックスで Signtool.exe を呼び出します。

高度なシナリオでは、配置を構成するファイルを圧縮しないことがあります。この場合は、ブートストラップ アプリケーションや Windows インストーラー パッケージよりも、ビルド出力のファイル数の方が多くなります。 通常は、これらの圧縮しないファイルに署名し、それぞれの署名付きコンポーネントのハッシュ コードを使用して Windows インストーラー パッケージを更新します。 この処理を行うには、ビルド後のイベントで以下を行うスクリプトを実行します。

  1. ビルド出力パスの一連の圧縮しないファイルと CAB ファイルを反復処理し、Signtool.exe を使用して署名します。

  2. Windows インストーラー パッケージ内で、署名した各ファイルのハッシュ コードを更新します。

  3. Signtool.exe を使用してブートストラップ アプリケーションに署名し、Windows インストーラー パッケージに署名します。

単純な例でこのエラーを修正するには

  • ビルド後のイベントのダイアログ ボックスで Signtool.exe を呼び出します。

    <SDK Install dir>Signtool sign –f "filename.pfx" –p "password" $(BuiltOuputPath)\Setup2.msi

    <SDK Install dir>Signtool sign –f "filename.pfx" –p "password" $(BuiltOuputPath)\setup.exe

証明書が .pvk ファイルおよび .spc ファイルに保存されている場合は、Windows プラットフォーム SDK の pvk2pfx.exe というツールを使用して、これらのファイル形式を .pfx に変換します。

参照

参照

配置プロジェクトの [プロパティ ページ] ダイアログ ボックス ([構成プロパティ] - [ビルド])

SignTool.exe (署名ツール)