.Net と BHO を使用して簡単な Internet Explorer 9 アドオンを作成し、外部の js ファイルをページにロードして実行しようとしています。
ieInstance_DownloadComplete を作成しました (ieInstance_DocumentComplete も試しましたが、状況はさらに悪化しました)。
InternetExplorer explorer = this.ieInstance;
var document = explorer.Document as IHTMLDocument2;
document.parentWindow.execScript(
@"
if (document.getElementById('KCScript') == null)
{
var fileref=document.createElement('script');
fileref.setAttribute('id', 'KCScript');
fileref.setAttribute('type','text/javascript');
fileref.setAttribute('charset', 'UTF-8')
fileref.setAttribute('src', 'C:/test.js');
fileref.onload = function () { eee(); };
if (typeof fileref!='undefined')
document.getElementsByTagName('head')[0].appendChild(fileref);}","JavaScript");
}
ページが読み込まれると、test.js が IE 開発者ツールのページに添付されていることがわかります。しかし、関数 eee() は発生せず、エラーが発生します:「SCRIPT1014: 無効な文字 test.js、行 1、文字 1」
test.js:
function eee()
{
alert('ttt!');
};
test.js は UTF-8 ですので、読み込みに問題はありません。他に何かあります。
どうしたの?何か案は?前もって感謝します!