私のアプリは、最初にWindowsインストーラーで展開されます。
私が探しているソリューションの主な特徴は次のとおりです。
アプリの実行中にサイレントアップデートをサポートする(またはクライアントを自動的に再起動する)
梱包プロセスの保守と管理が簡単
複雑なカスタマイズやインストールスクリプトは避けてください
どうすればこれを達成できるかについて何かアイデアはありますか?アイデアをサポートするためにアプリコードを変更することを意味する場合でも。
アプリケーションは.net2.0です
展開にClickOnceを使用することを検討しましたか?プログラムで更新をチェックし、オプションで強制的にインストールする機能があります。http://msdn.microsoft.com/en-us/library/ms404263.aspxを参照してください。
Proxy Design Pattern
これがプラグインに使用されるパターンである間、はこれを達成するのに役立ちます。
もう1つの簡単な説明は、Gang of Four - Proxy Design Pattern
です。
更新されたShadow Copying
アセンブリをアプリケーションアセンブリフォルダーにシャドウコピーするので、アセンブリに注意を払うことは間違いなく役立ちます。次に、アプリケーションに変更を認識させ、古いアセンブリをアンロードして、変更のために新しいアセンブリをロードできます。つまり、アプリケーションを再起動しなくても有効になり、これはエンドユーザーにとって完全に透過的です。
より単純なアプローチはClickOnce Deployment
、提案されたリンクをたどることについて読むことに興味があるかもしれません。