どのユーザにインストールするかどうか(installshield)


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

コマンド実行時に ALLUSERS プロパティを指定することで、
「すべてのユーザにインストール」するか「カレントユーザにインストール」するかを設定できます。

実行例)
Setup.exe /v"ALLUSERS=1"
または
Msiexec.exe /i project.msi ALLUSERS=1

インストールが、すべてのユーザ(per-machine)で行われるか、カレントユーザ(per-user)で行われるかは
ALLUSERS プロパティの値によって異なります。

ALLUSERS=""(NULL値:値が設定されていない場合)
カレントユーザのみに、インストールします。

ALLUSERS=1
すべてのユーザにインストールします。
ただし、カレントユーザが Administrator 権限を持っていない場合には、セットアップはエラーとなります。

ALLUSERS=2
・Windows XP 以前
 カレントユーザが Administrator 権限を持っている場合、すべてのユーザにインストールします。
 カレントユーザが Administrator 権限を持っていない場合には、カレントユーザのみにインストールします。

・Windows Vista
 Administrator 権限の有無にかかわらず、すべてのユーザにインストールを行うため、ALLUSERS=2 を使用
 する場合には、UAC による権限昇格を行うように設定します。
 UAC による権限昇格を行った場合には、すべてのユーザへインストールを行います。
 UAC による権限昇格を行わない場合には、セットアップはエラーとなります。

・Windows 7
 ALLUSERS=2 を使用する場合には、MSIINSTALLPERUSER プロパティも共に設定します。
 MSIINSTALLPERUSER =1 の場合、カレントユーザのみにインストールします。
 MSIINSTALLPERUSER ="" (NULL 値)の場合、すべてのユーザにインストールします。



User権限で実行する場合や UAC による権限昇格を行わず標準ユーザで実行した場合、権限のないフォルダや
レジストリ(c:\Program Files フォルダ内や HKEY_LOCAL_MACHINE など)に対し、権限を越えて書き込みを
行うことはできませんので、ご注意ください。

また、サイレントインストールを行う場合、InstallShield のプロパティマネージャやコマンドラインなどで
ALLUSERS の値を明示的に指定しない場合には、ALLUSERS=NULL として実行されます。

※ALLUSERS プロパティの詳細については、以下の内容をご確認ください。
 MSI Help Library : ALLUSERS Property