注意:セットアッププロジェクトはVisual Studio 2012からサポートされなくなりました。
「すべてのユーザー/このユーザーのみ」チェックボックスを隠して、設定を変更できないようにする方法を紹介します。
このチェックボックス(およびその上に表示されるテキスト)はNT系OSでのみ表示されますが、これを制御しているのが、ControlConditionテーブルです。ここで次の2つの行
Dialog_ | Control_ | Action | Condition |
---|---|---|---|
FolderForm | AllUsersRadioGroup | Show | VersionNT>=400 AND Privileged=1 |
FolderForm | AllUsersText | Show | VersionNT>=400 AND Privileged=1 |
のAction列を「Show」から「Hide」に変更することにより、常にチェックボックスが隠れるようになります。
もう一つの方法は、Controlテーブルでコントロールを直接制御する方法です。ControlConditionテーブルでShowされているため、ControlテーブルのAttributes列でVisibleフラッグをはずしても表示されてしまいます。よって手っ取り早く非表示にする方法は、Widthを0とすることでしょう。よって、次の2つの行(Height以降の列を省略しています)
Dialog_ | Control | Type | X | Y | Width |
---|---|---|---|---|---|
FolderForm | AllUsersRadioGroup | RadioButtonGroup | 24 | 210 | 342 |
FolderForm | AllUsersText | Text | 18 | 186 | 348 |
のWidth列を「0」とすることにより、表示されなくなります。
もっと全うな方法で行うならば(つまりControlConditionテーブルの設定を削除し、ControlテーブルのAttributes列の値を変更する)、次の情報を参考にしてください。
補足:Visual Studio 2005からは、セットアッププロジェクト(デプロイメントプロジェクト)のプロパティにより可能です。
(この記事は、「.NETプログラミング研究」の第61号で紹介したものを基にしています。)
注意:この記事では、基本的な事柄の説明が省略されているかもしれません。初心者の方は、特に以下の点にご注意ください。