我正在制作一个向JavaScript公开方法的BHO。它适用于页面的第一次加载但如果我导航到同一窗口中的另一个页面,则BHO对象变为null
并且无法从javascript访问。我导航到的页面有多个框架。框架会影响BHO注射吗?什么是正确的方法呢?
这是我用来注入窗口的代码
OnDocumentComplete(object pDisp, ref object URL)
{
dynamic windowEx = ((IHTMLDocument2)this.Browser.Document).parentWindow;
IExpando windowEx = (IExpando)Window;
if (windowEx.GetProperty("testBHO", BindingFlags.Default) == null)
{
PropertyInfo p = windowEx.AddProperty("testBHO");
p.SetValue(windowEx, this,null);
}
}