2010-12-05 10 views
2

クリック一回の展開で別のexeファイルをダウンロードして起動できますか?私は既にアプリケーションファイルをダウンロードして更新する機能を持っていますので、Click Onceのインストーラは既存のランチャをダウンロードし、そのショートカットを作成してからランチャを起動し、以前のように機能します。クリック一度のインストーラ、カスタムアプリランチャーとフルトラスト

これはGoogle Chromeと同じようだと思いますか?

+0

これが可能な場合、または別のルートを取らなければならない場合は、私はちょうど答えを探しています。あなたがよく一緒にそれらを送信するために見ているものに任意のポインタを持っている場合! :) –

+0

Chromeが何か似たようなことをしていると聞いたら、私は同じ考えを持っていました。 BTWは、ClickOnceの自動更新やその他の機能を使用している経験から、大きな罠になる可能性があり、多くの制限があります。私のアドバイスは、カスタムインフラストラクチャを計画して頼りにして、インストールを開始する以外のClickOnceに固有のことを明確にするように指導します。 – jpierson

+0

すべてのファイルが最新のものであるかどうかを確認する独自の「ランチャー」のインストールをブートストラップするためにClick-Onceを使用して500人以上の非常に大規模なインストールでアプリケーションをリリースしました。クリックしてインストールしたランチャーは、一度ダウンロードするとすべてのダウンロードを管理します。これは完全に機能し、一度クリックするだけでランチャーが自分自身を更新する必要があると判断した場合は、クリック一度のインフラストラクチャへのAPI呼び出しを使用してクリック一回のインストールを再実行し、ランチャーを更新します!すべての単一のファイルを更新できるのは本当に良いことです! –

答えて

1

はい、ClickOnceは複数のexeファイルを展開できます。唯一の規定は、1つのexeを "Entry Point" exeとして指定する必要があるということです。エントリポイントexeは、.Net実行可能ファイルでなければなりません。

このアプローチについては、ユーザーがアプリケーションを直接起動しないように注意してください。ユーザーがエントリポイントexeを介さずにアプリケーションを直接起動すると、ClickOnceが提供する素敵な自己更新機能が失われます。

+1

私が実現したいのは、MSIインストーラをClick Onceに置き換えることです。私のアプリケーションは今日サーバーとクライアントの両方を持っており、クライアントは起動時に実際のランタイムファイルが最新であるか更新が必要な場合にサーバーとチェックする「ランチャー」を介して起動されます。これは、私が実際にアプリケーションを更新するためのすべてのクリック一回の機能を使用していないことを意味しますが、ユーザーはMSIをダウンロードする代わりに「リンク」をクリックして自分のアプリケーション(ランチャーだけ)をインストールできます。このアプローチについてどう思いますか? –

+0

ほとんどの人がClickOnceを使用している理由は、更新を簡単に押し出すことができるためです。しかし、これはまだ動作すると思いますが、それはあなたのmsiファイルが実際に何をしているかによって異なります。ランチャー実行ファイルをクライアントマシンにコピーして実行したいだけなら、うまくいくはずです。好奇心のために、なぜあなた自身の "ランチャー"アプリを作ったのですか? ClickOnceは何をしていますか? – codeConcussion

+0

winformsベースのアプリケーションランタイム/開発プラットフォーム(一部はPAASと呼ばれることもあります)がありますので、ランタイムをプラットフォーム上に構築されたアプリケーションのエンドユーザーに配布する必要がありますが、プラットフォームのパラレルバージョンをサポートしたいので、 「雲」と「敷地内」の両方のインストールを可能にするために、プロセス全体を最大限に制御することが最善であると考えました。私たちはランチャーを(できるだけスムーズにインストールされている、ネッセサリープラットフォームとアプリケーションファイルを取得するために私たちのサーバーと話している)必要があります。 –

関連する問題