システムにインストールするための .msi ファイルを出力する Visual Studio インストーラー セットアップ プロジェクトがあります。.Net 4.0 で Visual Studio Pro 2013 を使用しています。
このアプリケーションは、主に、管理者以外の Windows 7 ユーザーが使用することを目的としています。ただし、ユーザーの制限により、プログラムは にInstallAllUsers
設定された管理者アカウントのコンピューターにインストールされTrue
ます。
展開プロジェクトは、デスクトップとプログラム メニューにショートカットを追加します。
インストール後、プログラムがインストールされたフラッシュドライブが取り外され、問題なく管理者アカウントのショートカットからアプリケーションが手動で起動されます。
ただし、作成されたショートカットを使用して管理者以外のアカウントで初めてアプリケーションを起動すると、問題が発生します。ここで、次のエラーが発生します。
製品 MyApp のインストール パッケージが見つかりません。インストール パッケージ 'MyApp.msi' の有効なコピーを使用して、インストールを再試行してください。
興味深いのは、実行可能ファイルを Program Files フォルダーから直接起動しようとすると、問題なく動作することです。ショートカットを手動で作成することもできますが、それも同様に機能します。最後に、実際にプログラムをフラッシュ ドライブの .msi ファイルに転送すると、問題は解決します。ただし、これは特に、コンピューター上の複数の非管理者アカウントで実行する必要がある場合、手動で行う必要があります。管理者アカウントに一度プログラムをインストールして忘れられるようにしたい.
このエラーが発生するのはなぜですか? アプリのインストール後に Windows が .msi ファイルを探すのはなぜですか? 展開プロジェクトの一部のプロパティを変更して回避する方法はありますか?