投稿者 YuO  (社会人) 投稿日時 2009/10/31 03:55:48
原則的に,インストーラは初期設定を行うための物です。
例えば,マシン全体に関わる設定を行うのはインストーラの役割です。
# デフォルトでは,UsersからはHKLMにしろ%ProgramFiles%にしろCommonAppDataにしろ書き込めないので。

以前,setup.exeではなく.msiを実行したためにVSTOが入らず動かない,という例も経験したことがあります。


手軽に作るならClickOnce,もう少し制御したいならセットアッププロジェクト (VS Std以上だったかな),
細かく制御したいならWiX,お金があるならInstall Sheildあたりがインストーラ作成用のものでしょうか。
WiX : http://wix.sourceforge.net/
Install Sheild : http://www.networld.co.jp/is/main.htm

ちなみに,インストーラは少なくともWindows Installerへ対応している物を使うのが無難ですし,推奨されています。
少し古いですが,「Designed for Windows XP アプリケーション仕様書 2.3 日本語版」には,
「S5.4 検証テストに合格した Windows Installer ベースのパッケージを使用してインストールする」
という項目があります。

InnoSetupはFAQで公式にWindows Installerへの対応をしないと表明しているので,上記の理由からお勧めできません。
自作するくらいならWiXの方が楽が出来ると思います。