クライアント マシンにいくつかのフォントをインストールするためのカスタム セットアップ パッケージを作成し、それを の下の前提条件フォルダーに展開しましたC:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\FontsInstaller
。Visual Studio 2010 の前提条件として参照することですべて問題なく、問題なくアプリケーションを公開できます。
一方、クライアントはハッシュ検証中にエラーを受け取ります。
ファイル ハッシュの検証
エラー: セットアップは、ファイル 'C:\Users\RMORAN~1\AppData\Local\Temp\VSD4684.tmp\FontsInstaller\fontsinstaller.msi' が最初に公開されてから変更されたか、破損している可能性があることを検出しました。
Bootstrapper Manifest Generator でハッシュを含めて除外しようとしましたが、クライアントで常に同じ結果が得られます。ファイルは、ハッシュ検証に失敗するとすぐに (セキュリティ上の理由から) 削除されます。
さて、次のようなMicrosoft Connect バグ レポートを見つけました。
「アプリケーションの前提条件としてカスタム ブートストラップ パッケージをインストールしています。Visual Studio 2012 がインストールされているシステムでこれをビルドすると、次のエラーでインストールが失敗します。
セットアップは、ファイル '...' が最初に公開されてから変更されたか、破損している可能性があることを検出しました。
パッケージやプロジェクトに変更を加えずに、Visual Studio 2010 でビルドしています。Visual Studio 2012 がインストールされていない場合、これは期待どおりに機能します。」
VS2012 がインストールされていない別のワークステーションでこのインストーラーをビルドしようとしましたが、クライアントでハッシュ検証に合格しました (署名の問題に遭遇しましたが、それは別の話です)。元のワークステーションでビルドされたパッケージが VS2012 を搭載していないマシンでも失敗するため、クライアントではなく VS2012 を搭載したビルド マシンに問題があります。
他の誰かがこの問題を経験したことがありますか?もしそうなら、VS2012 をインストールしない以外に回避策を見つけましたか?