0

Visual Studio 2010 セットアップを使用して、アプリケーションのインストーラーを作成しています。ファイル システム エディターから、ソリューションで作成された 2 つの主要な出力ファイルの 1 つを選択しました。右クリックして、実行可能ファイルのショートカットを作成しました。ショートカットをユーザーのプログラム メニューにドラッグ アンド ドロップしました。インストーラーをビルドすると、すべてが正常に完了します。インストーラーを実行すると、すべてが正常に実行されます。ここで、ショートカットをダブルクリックすると、インストーラーが再実行されて失敗します!!!. ショートカットを確認しましたが、比較するために手動で作成したものとは異なります。ターゲットはグレー表示されます。どんな助けでも大歓迎です!!!

4

2 に答える 2

3

アドバタイズされたショートカットを使用してアプリケーションを起動すると、Windowsインストーラーはアプリケーションリソースが損なわれていないかどうかを確認します。1つ以上のリソースが欠落している場合、WindowsインストーラーはキャッシュされたMSIを使用してそれらを自動的に再インストールします。これが、2番目のインストールが実行される理由です。

Visual Studioで作成されたショートカットがアドバタイズされるため、インストールされているファイルの一部が欠落している場合、修復がトリガーされます。

何が修復をトリガーするかを判断するには、次のことを試してください。

  • 「インストールの準備をしています」というメッセージを受け取ったら、イベントビューアを開きます([スタート]メニューで検索するか、「eventvwr.msc」を起動できます)。
  • 「Windowsログ」->「アプリケーション」に移動します</li>
  • 次の形式の「MsiInstaller」情報メッセージを探します。

    イベントタイプ:警告イベントソース:MsiInstallerイベントID:1001説明:製品「{1F7D16F0-836D-4CE4-9123-D30B2F24A17B}」の検出、コンポーネント「{068153F4-B9E0-4745-9A47-」の要求中に機能「FeatureId」が失敗しました833764D9D60C} '

GUIDはマシンによって異なりますが、問題の原因となっているコンポーネントを特定するのに役立ちます。最初のGUIDはパッケージProductCodeであり、2番目のGUIDは問題のあるコンポーネント用です。インストールログを作成して、コンポーネントが正しくインストールされない理由を確認してください。

于 2012-04-19T11:02:27.803 に答える
0

これは、レジストリ ハイブの問題でした。Visual Studio 2010 レジストリ エディターでは、'HKEY_USERS(64)\S-1-5-20\Fileopen. ただし、これが上記のエラーの理由でした。つまり、Visual Studio 2010 からのセットアップと展開を使用して生成されている場合、レジストリのこの部分に値を含めることはできません。local_Machine の下に値を移動すると、ショートカットが魅力的に機能します。

于 2012-05-01T22:52:23.273 に答える