jqs.exe を切る (無効にする) WSH スクリプト

jqs.exe とは何ぞや

気がついたら jqs.exe と言う謎のプロセスが動いていたので調べてみました。
このプロセスは、Java アプレットおよび Java アプリケーションの起動を高速化するために、JQS というプリロード機能を提供するものだそうです。
Windows 2000,XP で Java を導入すると、(初期状態で) JQS が有効になっているようで、Windows 起動の際にバックグラウンドで jqs.exe が読み込まれます。
ちなみに JQS とは Java Quick Starter の略だそうです。

Java ファイルの一部を定期的にメモリーキャッシュ

で、この jqs.exe、最大 20M の RAM キャシュを使用するんです。
些細なことかもしれませんが低スペックでカツカツの PC では見逃せません。
早速、無効にしたいと思います。
WSH スクリプトで切る方が楽です。
WSH スクリプトで切る場合は下記の "手動で切る場合" を読み飛ばしてください。

手動で切る場合 (面倒)

まず、"コントロール パネル" の "Java" をクリックして、"Java コントロールパネル" を開きます。
(あるいは、Windows ロゴ キー + R を同時に押し、"ファイル名を指定して実行" ダイアログ ボックスを開き、

javacpl.cpl

と入力して OK をクリックでも "Java コントロールパネル" を開く事が出来ます。)
"詳細" タブを開き、"その他" にある "Java Quick Starter" のチェックをはずします。これで、Windows 起動時にバックグラウンドで jqs.exe が読み込まれることは無くなります。

jqs.exe を切る WSH スクリプト

一度切っても、Java をバージョンアップさせる度に JQS が有効になります。
毎回、手動で切っていては面倒なので WSH スクリプトを使い、ワンクリックで切ります。
Windows XP SP3 で動作確認を行いました。
keysend で操作を行っているため誤作動が発生する可能性があります。
jqskill.vbs を右クリックで保存してください。jqskill.vbs を実行すると、自動的に "Java コントロールパネル" を開き、"Java Quick Starter" のチェックをはずします。

ソースコード

ソースコードを色付けして記述する(シンタックス・ハイライト) - はてなダイアリーのヘルプの対応ファイルタイプに wsh とありますが、なぜかハイライトされません。Windows Scripting Host の wsh じゃ無いのかな??

Dim objWshShell                                             '変数 objWshShell を宣言
Set objWshShell = WScript.CreateObject("WScript.Shell")     'WScript.Shell オブジェクトを変数 objWshShell へ代入
objWshShell.Run "control.exe javacpl.cpl"                   '"java コントロールパネル" を開く
Do Until objWshShell.AppActivate("java コントロールパネル") '"java コントロールパネル" が起動しているかチェック
    WScript.Sleep 1000                                      '起動していない場合は 1000 ミリ秒待機する
Loop                                                        '起動チェックへ戻る
objWshShell.SendKeys "{LEFT}"                               '"詳細" タブへ移動
WScript.Sleep 500                                           '500 ミリ秒待機する
objWshShell.SendKeys "{TAB}"                                'フォーカスを移す
WScript.Sleep 500                                           '500 ミリ秒待機する
objWshShell.SendKeys "{DOWN 10}"                            '"その他" へ移動
WScript.Sleep 500                                           '500 ミリ秒待機する
objWshShell.SendKeys "{RIGHT}"                              '"その他" を展開
WScript.Sleep 500                                           '500 ミリ秒待機する
objWshShell.SendKeys "{DOWN 2}"                             '"Java Quick Starter" へ移動
WScript.Sleep 500                                           '500 ミリ秒待機する
objWshShell.SendKeys "^ "                                   '"Java Quick Starter" のチェックをはずす
WScript.Sleep 500                                           '500 ミリ秒待機する
objWshShell.SendKeys "~"                                    '了解を実行
WScript.Quit                                                '処理を終了