none
ClickOnceのアンインストール・インストール時にレジストリを操作したい RRS feed

  • 質問

  • はじめまして
    Visual Studio 2010 Premium / C#にて開発を行っている者です。
    現在、ClickOnce ソリューションを開発し、配布を行っております。
    配布しているアプリケーション自体は問題なく動いております。

    これに、レジストリの設定を加えたいと考え、インストール・アンインストール時にレジストリの操作が出来ないものかと考えております。
    インストール時にレジストリを作成する方法は
    アプリケーション起動時に、レジストリの有無を確認し、操作対象のレジストリが無ければ作成する……という手段で何とかなると考えております。

    一方で、アンインストール時にレジストリを削除する方法が分かりません。
    アンインストール時の操作をカスタマイズできれば、問題なく実現できると思っているのですが……

     

    何か良い方法をご存知の方いらっしゃいましたら、ご教示ください。

     

    2011年11月9日 7:56

回答

すべての返信

  • ClickOnceではインストール、アンインストールのカスタマイズは一切だめなのでは、
    と思っていましたが、こんなのがあるということは可能なのかもしれません。
    http://msdn.microsoft.com/ja-jp/library/dd465291.aspx

    • 回答としてマーク Harinezumi 2011年11月10日 11:05
    2011年11月9日 9:14
  • 以下のページによると不可能っぽいですね。

    第3回 Visual Studio 2005でClickOnceを極めよう
    http://www.atmarkit.co.jp/fdotnet/clickonce/clickonce03/clickonce03_02.html

     


    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://d.hatena.ne.jp/trapemiya/
    • 回答としてマーク Harinezumi 2011年11月10日 11:05
    2011年11月9日 9:36
    モデレータ
  • ClickOnce も v2, v3 とかわってきていますね。

    VSTO 用の v3 (.NET4) の新機能で、<postActions> が追加されたので、インストール後に任意の追加処理を実行できるようになりました。しかし、アンインストール時に呼び出される機能を登録することはできません。

    アンインストール関連のインターフェースもあるのですが、内部用であってドキュメントもありませんし、マニフェスト上に記述することもできないので、今後の拡張待ちといったところでしょう。

    参考: http://msdn.microsoft.com/ja-jp/library/bb757477(v=VS.100).aspx の vstav3 名前空間関連

    参考: http://blogs.msdn.com/b/tsmatsuz/archive/2009/01/28/tech-days-visual-studio-2010-vsto-ctp-1.aspx CTP版の記事ですが...

     

    • 編集済み K. Takaoka 2011年11月10日 3:49
    • 回答としてマーク Harinezumi 2011年11月10日 11:05
    2011年11月10日 3:48
  • 皆さん回答ありがとうございます。

    mars12さん、K. Takaokaの回答を参考にして、postActionsを作ってみました。
    しかし、これはVSTO限定のようですね……
    現在開発しているアプリケーションはVSTOもあるにはあるのですが、VSTO以外のアプリケーション(WindowsForm)がメインです。
    そのため、今回は諦めて出来ないもの……と考えます。

     

    皆さん、回答ありがとうございました。

     
    2011年11月10日 11:01