====== Windows-ドライブの非表示とアクセス拒否 ======
マイコンピュータ等には、通常システムが格納されているCドライブや、その他のパーティション、光学ドライブが表示されているが、これらを非表示にしたり、ユーザーの操作によるアクセスを拒否する場合の方法。
===== 共通 =====
本操作では、レジストリ操作を行う。\\
値の設定を行う際、操作対象のドライブを特殊な数値で指定する。\\
数値は2進数を基礎とし、ドライブレターのAから順に下記のようになる。\\
Aドライブ 1
Bドライブ 10
Cドライブ 100
Dドライブ 1000
Eドライブ 10000
Fドライブ 100000
…
Zドライブ 10000000000000000000000000
上記の値を、対象としたいドライブの分だけ加算する。\\
例えば、EドライブとFドライブを対象とするのであれば、**10000+100000=110000**となる。\\
この110000という数値は前述の通り2進数だが、設定するレジストリはDWORD値なので、これを10進数または16進数に変換しておく。\\
(2進数)110000 = (10進数)48 = (16進数)30
===== 任意のドライブの非表示 =====
ドライブを非表示にする場合、NoDrivesというレジストリ値を操作する。
==== 現在のユーザーにのみ設定する場合 ====
- regeditでレジストリエディタを起動し、次のキーを展開する。
- **HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer**
- **Explorer**キーを右クリックし、**新規**から、**DWORD値**を選択する
- 追加したDWORD値の名前を**NoDrives**とする。
- 追加した値をダブルクリックし、値のデータを入力する。
- この時、**表記**が10進数か16進数のどちらになっているかで、あらかじめ計算しておいた値が変わるので注意する。\\ 例の通り、E、及びFドライブを非表示にする場合、10進数ならば48を、16進数ならば30を入力する。
- レジストリエディタを終了し、再起動、または再ログオンする。
==== このマシン自体に適用する場合 ====
基本手順は同じ。\\
展開するキーが下記に変更となる\\
- **HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer**
===== 任意のドライブへのアクセス拒否 =====
ドライブへのアクセスを拒否する場合、NoViewOnDriveというレジストリ値を操作する。
==== 現在のユーザーにのみ設定する場合 ====
基本手順はドライブの非表示と同じ。\\
新規に追加する値の名前が**NoViewOnDrive**に変更となる。\\
==== このマシン自体に適用する場合 ====
こちらも基本手順は同じ。\\
展開するキーが下記に変更となり、追加する値の名前を**NoViewOnDrive**とする。\\
- **HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer**
===== コマンドラインから設定する場合 =====
レジストリエディタではなく、コマンドプロンプトやバッチファイル等で設定する場合は、REGコマンドを使用すると良い。
==== 現在のユーザーのE、Fドライブを非表示にする場合 ====
* 10進数
REG ADD "HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v NoDrives /t REG_DWORD /d 48 /f
* 16進数
REG ADD "HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v NoDrives /t REG_DWORD /d 0x30 /f
==== このマシンのE、Fドライブを非表示にする場合 ====
* 10進数
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v NoDrives /t REG_DWORD /d 48 /f
* 16進数
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v NoDrives /t REG_DWORD /d 0x30 /f
==== 現在のユーザーのE、Fドライブへのアクセスを拒否する場合 ====
* 10進数
REG ADD "HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v NoViewOnDrive /t REG_DWORD /d 48 /f
* 16進数
REG ADD "HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v NoViewOnDrive /t REG_DWORD /d 0x30 /f
==== このマシンのE、Fドライブへのアクセスを拒否する場合 ====
* 10進数
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v NoViewOnDrive /t REG_DWORD /d 48 /f
* 16進数
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v NoViewOnDrive /t REG_DWORD /d 0x30 /f
===== アクセス拒否設定について =====
聞いただけなので、わからんけど(試せよ!w)\\
アクセス拒否設定を有効にした場合に、アクセスできないのは、エクスプローラ経由(?)のユーザー操作によるものだけらしい。\\
サービスとして動作しているアプリケーションがアクセスする事まで拒否するわけでは無いようだ。