[Windows Script Host] JScriptがエラーで実行できない時の対処
あらすじ
一部の環境下でcscript.exeを使用してJScriptを実行するとエラーが発生する。
1 2 |
cscript unko.js |
エラー
1 2 |
入力エラー: ファイル拡張子 ".js" を持つスクリプト エンジンはありません。 |
環境
Windows 10
参考
対処
cscriptのオプションにエンジンを指定して実行してやると解決。
1 2 |
cscript //e:jscript unko.js |
原因
何かの拍子に以下のレジストリ値が “JSFile” では無くなっている環境で発生する模様。
1 2 3 |
[HKEY_CLASSES_ROOT\.js] @="JSFile" |
サーベイしているとこのレジストリを戻して対処する情報が多くて気にかかり、
環境依存の修正となってしまうためオススメしたくないとは思い本エントリを寄稿。
実行時にエンジンを指定してやることで確実に実行できるはず。
※ダブルクリックで実行できるよう修正したい場合はレジストリも修正して下さい。個人的にこれはどうでもいいので詳細は割愛。
おわい
WSHはレガシーなので使い勝手の良いPowerShellやWSLに移行して行きましょう。
おわい