Я делаю BHO, который предоставляет метод JavaScript.
Он нормально работает в IE 9 и IE 10, но не работает в IE 8 с RuntimeBinderException: "mshtml.HTMLWindow2Class" does not contain "signJson"
.
Код в основном основан на расширении IE для динамической перезагрузки.
Вот как эта функция внедряется в окно:
public void InjectScriptResource(dynamic window)
{
var windowEx = (IExpando)window;
if (windowEx.GetProperty("signJson", BindingFlags.Default) == null)
{
windowEx.AddProperty("signJson");
window.signJson = this;
}
}
Чем отличается mshtml.HTMLWindow2Class
в IE 8 от IE 9? Как правильно внедрить в него метод?