2013/05/02

InstallShieldのインストールする機能をコントロール

インストールスクリプト(Setup.rul)を使うことが多いが、前からあってどうも分かってなかったコードについてメモ。
 MsiSetFeatureState(hMSI, "機能名", INSTALLSTATE_ABSENT);
で「機能名」の機能はインストールしないという命令になる。
でこの機能は「編成」-「機能」のもそうなのだが、実態はその上「編成」-「セットアップデザイン」にあり、そこで「機能名」にコンポーネントを関連付けが出来る。

何か知らないが新しくファイルとかを追加した場合、適当な機能に勝手に関連付けられるような気がする。
今回の問題も全く意図していない機能にまとめて全部関連付けられて、しかもツリーの下の方だったので発見が出来なかった。
結果的に機能をインストールするとかしないとかのコントロールがうまくいかなくなるので、そいった場合は「セットアップデザイン」のツリーを全部展開してよーく見てみること。

0 件のコメント:

コメントを投稿