Last-modified: 2012-01-08 (日) 04:23:35
WindowsTips/デバイスの有効・無効をコマンドプロンプトから行いたい

概要

バックアップ用HDDの電源ON/OFFをコマンドプロントから行い、タスクスケジューラーに登録できるようにします。(省電力化のため)
デバイスの有効・無効をコマンドプロンプトから行うために、WDK(Windows Driver Kit)に含まれるdevcon.exeを使用します。

方法

  1. WDKをインストールします。
    今回はdevcon.exeが必要なだけなので、Toolsのみインストールしました。
    Windows Driver Kit (WDK) ダウンロード ファイルの入手場所と手順について
    WS000000.PNG
  2. インストールパスの設定をします。
    WS000001.PNG
  3. インストール完了まで待ちます。
    WS000003.PNG
  4. 「C:\WinDDK\7600.16385.1\Tools\devcon」以下に「i386」、「amd64」、「ia64」用がインストールさます。
  5. デバイスを特定するためのIDが必要なので調べます。
    ここでは例として、「I-O DATA HDCR-U USB Device」を操作します。
    デバイスマネージャから、「I-O DATA HDCR-U USB Device」のプロパティを開きます。
    20120107_01.png
  6. [詳細]タブを選択し、プロパティから[ハードウェアID]を選択します。
    先頭の値をコピーし控えます。
    20120107_03.png
  7. 同じように「I-O DATA HDCR-U USB Device」が使用しているUSBコントローラーのハードウェアIDも調べます。
    20120107_02.png
  8. 以下のようなバッチを作成し、タスクスケジューラに登録すれば目的達成です。
    Vistaや7の場合、管理者権限で動作させてください。
    ちなみに私はバックアップをMacrium Reflect Free Editionというアプリで行なっています。
    フリーですが、VSSをサポートしており、コマンドプロンプトからも起動できるため、バックグラウンドのバックアップ処理に適しています。
  9. mount.bat
    Everything is expanded.Everything is shortened.
      1
      2
      3
      4
      5
      6
      7
      8
      9
     10
    
     
     
     
     
     
     
     
     
     
     
    
    :: =============================================================================
     
    :: devcon
    @set DEVCON="C:\WinDDK\7600.16385.1\Tools\devcon\amd64\devcon.exe"
     
    :: =============================================================================
     
    :: バックアップ用ドライブマウント
    %DEVCON% enable "USB\VID_04BB&PID_012E&REV_0000"
    %DEVCON% enable "USBSTOR\DiskI-O_DATAHDCR-U__________"
  1. unmount.bat
    Everything is expanded.Everything is shortened.
      1
      2
      3
      4
      5
      6
      7
      8
      9
     10
    
     
     
     
     
     
     
     
     
     
     
    
    :: =============================================================================
     
    :: devcon
    @set DEVCON="C:\WinDDK\7600.16385.1\Tools\devcon\amd64\devcon.exe"
     
    :: =============================================================================
     
    :: バックアップ用ドライブアンマウント
    %DEVCON% disable "USBSTOR\DiskI-O_DATAHDCR-U__________"
    %DEVCON% disable "USB\VID_04BB&PID_012E&REV_0000"

検証時の環境

参考