1. 一時ドライブとは何か?
1.1 一時ドライブを作るわけ
WindowsはProgram Files などの指定したディレクトリにプログラムやドキュメントを作成するように設計されています。
インターネット上でダウンロードしたファイルを扱っているときに、こうしたディレクトリに自分では意図しないファイルができている場合があります。
このとき、一時作成用のドライブを使うことでそういったファイルを簡単に削除できるようになります。
一般的にはワーク用フォルダc:\work などを使いますが、絶対ディレクトリで展開された場合に問題が発生する場合があります。
ここでは、ワーク用フォルダをドライブに割り当てて上記の問題を解決します。また、PCが起動したときに不要なファイルを削除するようにします。
1.2 フォルダーにドライブを割り当てる
Windowsの前身であるMS-DOSでは指定したフォルダー(そのときはディレクトリ)にドライブを割り当てるコマンドがありました。
コマンドは"subst"というコマンドで、
subst z: c:\tmp
というように実行すると、CドライブにあるtmpフォルダーをドライブZでアクセスできるようになります。
このコマンドはWindowsでも使えるので、上記のようにしてドライブZに一時処理用フォルダ"c:\tmp"を割り当てます。
2. 一時ドライブの作り方?
2.1 AUTOEXEC.BATを使う(Windows 9x)
Windows98では、起動時にAUTOEXEC.BATを実行します。そのため、AUTOEXEC.BAT内に
コマンドsubst z: c:\tmp を追加すれば可能です。
2.2 VBScriptを使う(Windows2000以降)
Windows2000以降では、autoexec.batのように自動的に実行される処理はありません。
そのため、Login時に実行されるスタートアップ時に一時ドライブを設定するスクリプトを実行させます。
具体的には、substを実行させて一時ドライブを作成し一時ドライブ内のファイルを消去するスクリプトを作成し、スタートアップメニューに登録します。
2.3 一時ドライブを作成する
具体的には、次のようにして一時ドライブを作成します。
- Windowsのスタートアップに登録するツール用のフォルダを作成します。
- フォルダ構成
C:/
+-bin
+-init
- 作成したフォルダ
bin/init/ 下に一時ドライブ作成スクリプトtmpdrive.vbs を作成します。
- C:/bin/init/tmpdrive.vbs
set fs = CreateObject("Scripting.FileSystemObject")
set shell = CreateObject("WScript.shell")
if not fs.FolderExists("c:\tmp") then
fs.CreateFolder "c:\tmp"
end if
shell.Run "c:\windowst\system32\subst z: c:\tmp", 0
if fs.FolderExists("c:\tmp\") then
fs.deleteFile "c:\tmp\*.*", vbTrue
fs.deleteFolder "c:\tmp\*.*", vbTrue
end if
if not fs.FolderExists("z:\tmp") then
fs.CreateFolder "c:\tmp\mp3"
fs.CreateFolder "c:\tmp\tmp"
end if
- 作成した一時ドライブ作成スクリプトをスタートアップメニューに登録します。
- スタートメニューを右クリックし、開く-All Usersとして
スタート メニュー を開きます。その後、フォルダをクリックしてスタートメニュー\プログラム\スタートアップ を開きます。
![[スタートアップメニュー]](images/tmpdrv-01.jpg)
- 新規作成-ショートカットとし、
C:\bin\init\tmpdrive.vbs を登録します。
![[tmpdrive.vbs]](images/tmpdrv-02.jpg)
-
ショートカットの名前 としてZドライブ作成 と入力し、完了をクリックします。
![[Zドライブ作成]](images/tmpdrv-03.jpg)
以上でWindowsを起動するたびにワーク用ドライブZ: が作成されるようになります。
以後、ダウンロードしたソフトウェアや体験版などのテストは上記Zドライブを使うようにします。
|