Internet Explorer 8 の JavaScript で例外が発生した場合、完全なコール スタックを取得する必要があります。関数呼び出しは、数が多いフレーム間で発生する可能性があります。
開発者にログを送信するために必要なコール スタック。エンド ユーザーがこの問題に対処する必要がないため、デバッガを使用できません。
コールスタックを生成できる JavaScript の現在のソリューション ( http://eriwen.com/javascript/js-stack-trace/ )。これは、arguments.callee.caller に基づいています。ただし、関数が現在のフレームの外から呼び出された場合、呼び出し元はゼロ ( undefined ) を返します。したがって、取得されたコールスタックは不完全です。
この場合、関数が呼び出されたフレームの名前を取得できますか?
Active Scripts Technology に基づくソリューションは、タイプ ScriptEngine のオブジェクトを提供します: IHTMLDocument:: get_Script (IDispatch ** p)
しかし、オブジェクト「スクリプト」をインターフェイス IActiveScript にキャストすると失敗します。
*コールスタックを構築するために必要な情報を抽出するために、特定のコンテキスト ScriptEngine に使用されるリンクを IE8 から取得できますか?