2010年6月9日水曜日

DETARAMドライブレターをRにしてみた

windows7の64bit版で具体的に困ったこと

  • アナログのビデオキャプチャのドライバがない
    サウンドだけ使えない。画像は使えた。どうも更新されそうにない。
  • RAMディスクソフトがない
    XPでは有償のRamPhantom3を使ってたけど、これも対象外で現在はRamPhantom7 おまけにこれも32bit版だけ。

 ようやく見つけた「Dataram RAMDisk」(※64ビット版Windowsに対応した“RAMディスク”構築ソフト「Dataram RAMDisk」)も無償では最大4GB。これは別にかまわない(積んでるの4GBだし。最大でも8GBのシステムだし)んだけど、RAMディスクのドライブレターが変更できないのが最大の難点(変えることはできるけど再起動で戻ってしまう)

 なんとか無理矢理RAMディスクの定位置である「R:\」にマウントする方法を考えてみた。

※ Rドライブはすでに別のディスクが割り当てられていないことが前提。

➀ 仮想マウントコマンド SUBST

 subst  仮想ドライブの割り当て
構文 SUBST [ドライブ1: [ドライブ2:] パス]
 現在RAMディスクが割り当てられている初期のドライブレターは「F:\」なので、これを「R:\」としても使用するために
subst R: F:\
 コマンドラインに打ち込めばFドライブと同じRドライブが生成される
 これを起動時にタスクで起動させれば……

➁ タスクの設定

 「マイコンピューター」を右クリック→「管理」で管理画面を開いて
「タスクスケジューラ」の左のポイントをクリックして「タスクスケジューラライブラリ」を選択。
 左右中央の3ペインになっている画面右にある選択肢から「基本タスクの作成」を選択して「スタートアップ1分後にsubst R: F:\を実行するタスク」を作成する。
 以下、画像でやると……

EasyCapture0

RAMディスクの割り当てはスタートアップ時に起きるのでタスクがスタートアップと同時だとRAMディスクがまだ割り当ててない可能性があるのでコマンドが失敗してしまうことがある(つーかそうなってしまった)ので起動に遅延を入れることで解消。FドライブとRドライブの2つができてしまうもののドライブレターが不足しているわけではないのでとりあえずこのまま。
 確かに理想はFドライブをアンマウントしちゃえればいいんだけど。