JScript9LegacyではActive Scriptをサポートしているのか
JScriptのスクリプト実行にActive Script(IActiveScriptクラス、IActiveScriptParseクラス)を利用しているアプリケーションで、Windows 11をバージョン24H2にしたところエラーが発生しスクリプトが実行できない問題が発生しています。
原因を調査したところ、バージョン24H2における下記URL(※1)の仕様変更が影響して、Active Scriptの実行がエラーとなっていることが判明しています。
※1 JScript9Legacy scripting engine now enabled by default
=>スクリプトエンジンとしてJScriptを利用していたプロセスは全てJScript9Legacyが利用されるようになる
レジストリ設定(※2)でスクリプトエンジンをJScript9Legacyから23H2までのデフォルトであるJScript(旧スクリプトエンジン)に戻すことによりアプリケーションは問題なく動作するようになるのですが、スクリプトやアプリケーションの修正で対応できる問題なのか調査しています。
Copilotなどを利用して調査すると、JScript9LegacyはJScript9(Active Scriptをサポートしていない)がベースになっていることから、Active Scriptをサポートしていないか、またはサポートしていても限定的なのではないかという情報が得られていますが、Microsoftの公式サイトからははっきりした情報が見つけられません。
※2
以下のレジストリを設定する。
・キー: HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\Main
・値の名前: JScriptReplacement
・値の種類: DWORD
・値 : 0
そこで、以下の質問があります。
・スクリプトエンジンJScript9LegacyではActive Scriptをサポートしているのでしょうか。
・サポートしている場合はどの範囲でサポートされているのでしょうか。JScrip(旧スクリプトエンジン)と比較してIActiveScriptクラス、IActiveScriptParseクラスのどの機能が利用できるかなど、具体的に教えてください。
以上