コマンドプロンプト経由でタスクスケジューラーに特殊なレジストリーを消させる
SYSTEM\Enum配下にあるレジストリーはデバイスマネージャーに登録されたデバイスドライバなのですが、Windows 7以降、バグった場合に削除できなくてよく困ります。
タスクスケジューラーをバッチファイルで実行すれば手早く登録と実行ができます。
1. ダブルクオートの問題
これは簡単。"の前に \をつければ良いのです。
schtasks /create /tn "del \"c:\mofmof\""
2. アンパサンドの問題
デバイスドライバエントリーをレジストリから削除する場合
問題になるのが &(アンパサンド)です。
& が入っていると コマンドが分割され、別々に実行されてしまいます。
この場合は、\&にしても効果はありません。
&の場合は、 ^& のようにします。
例えば、レジストリ
を削除させるためには
schtasks /create /tn "delreg" /sc daily /st 10:00 /ru system /RL HIGHEST /tr "reg delete \"HKLM\SYSTEM\CurrentControlSet\Enum\USB\VID_0E0F^&PID_000B^&MI_00\" /f"
これで登録と削除が実行できます
レジストリの削除は、確認プロンプトが出るので /f つけないと裏で止まるので注意
Comments