0

私は今、非常に大きな問題に直面しています。
アプリケーションの 2 つのインストール メカニズムをサポートしたいと考えています。

  1. セットアップ ファイルをビルドします。ローカルマシンにインストールできます。
    このアプリケーションは、ローカル モードでのみ動作します。
  2. ClickOnce を使用してセットアップを発行します。

それらのうちの 1 つのみが 1 台のマシンに存在できるようにする必要があります

これの意味は:


  • ClickOnce バージョンを既にインストールしている場合は、スタンドアロン バージョンのインストールを許可してはなりません。(この場合、メッセージボックスが表示されます)
  • スタンドアロン パッケージをインストールした場合、ClickOnce セットアップで、スタンドアロン バージョンを ClickOnce バージョンにアップグレードするかどうかを尋ねられ、その過程でスタンドアロン バージョンが削除されます。

私はこれについて何晩も考えてきましたが、それを解決する方法が思いつきません。

4

1 に答える 1

0

次の情報が役立つ場合があります

  1. カスタム ClickOnce インストーラーの作成: http://tinyurl.com/custominstaller
  2. 顧客 ClickOnce インストーラーの作成 (MSDN): http://tinyurl.com/custominstallermsdn
  3. ClickOnce 配置の管理: http://msdn.microsoft.com/zh-cn/library/aa480721.aspx

これらの記事で説明されているオプションは、システム上のスタンドアロン インストールをチェックして適切なアクションを実行するカスタム インストーラーを構築するのに十分な情報を提供するはずです。

ただし... 通常、ClickOnce アプリケーションでは管理者特権をインストールする必要はありませんが、通常のアプリケーションではインストールする必要があります。これは、ClickOnce インストーラーが通常のユーザーとして実行された場合、コンピューターにインストールされているアプリケーションを確認するための十分な権限がない可能性があることを意味します。

スタンドアロン アプリケーションと ClickOnce アプリケーションの両方が、ユーザーのローミング プロファイル ディレクトリにアクセスできるため、そこに情報を保存できる場合があります。('Environment.SpecialFolder.ApplicationData')

カスタム ClickOnce インストーラーは、そのディレクトリをチェックして、スタンドアロン アプリケーションがインストールされたことを示す兆候を見つけることができ、スタンドアロン インストーラーは同じことを行うことができます。

実際、スタンドアロン インストーラーは、同時に clickonce インストーラーになることもできます。
いずれかのバージョンをインストールできるカスタム インストーラーを作成して、ユーザーにオプションを提供します。

結論: 顧客インストーラーを構築する

于 2013-01-16T11:08:33.167 に答える