3

我需要从 javascript 调用 C# BHO 方法

我遵循了这个问题中给出的解决方案

我得到错误:

'mshtml.HTMLWindow2Class' does not contain a definition for 'myExtension'.

我不能分配:

dynamic window = browser.Document.parentWindow; 

由于 parentWindow 未定义,我必须转换为 (mshtml.IHTMLDocument2) 和 (mshtml.IHTMLWindow2)

有没有人有我可以参考的完整工作示例或任何帮助或替代解决方案

4

1 回答 1

6

我有同样的问题。以下修复似乎适用于我的 BHO:

dynamic window = _webBrowser.Document.parentWindow;
var windowEx = (IExpando)window;
PropertyInfo p = windowEx.AddProperty("myExtension");
p.SetValue(windowEx, this);

代替:

dynamic window = _webBrowser.Document.parentWindow;
var windowEx = (IExpando)window;
PropertyInfo p = windowEx.AddProperty("myExtension");
window.myExtension = this;
于 2013-01-16T02:15:48.773 回答