1
我从此源创建了IE扩展: How to get started with developing Internet Explorer extensions? 而且它工作得很好。但我想改变Internet Explorer扩展
int IOleCommandTarget.Exec(IntPtr pguidCmdGroup, uint nCmdID, uint nCmdexecopt, IntPtr pvaIn, IntPtr pvaOut)
{
var form = new HighlighterOptionsForm();
form.InputText = TextToHighlight;
if (form.ShowDialog() != DialogResult.Cancel)
{
TextToHighlight = form.InputText;
SaveOptions();
}
return 0;
}
这样:
int IOleCommandTarget.Exec(IntPtr pguidCmdGroup, uint nCmdID, uint nCmdexecopt, IntPtr pvaIn, IntPtr pvaOut)
{
HTMLDocument document = (HTMLDocument)browser.Document;
IHTMLElement head = (IHTMLElement)((IHTMLElementCollection)
document.all.tags("head")).item(null, 0);
IHTMLScriptElement scriptObject =
(IHTMLScriptElement)document.createElement("script");
scriptObject.type = @"text/javascript";
var text = @"alert('hello') ";
scriptObject.text = "(function(){" + text + "})()";
((HTMLHeadElement)head).appendChild((IHTMLDOMNode)scriptObject);
return 0;
}
但是,当我建立它,然后单击按钮。我不给我一个警告消息。 我只想注入一个脚本。任何想法或窍门...解决这个问题
不,这是行不通的。 – user1731468
它显示自己错误的“文档” – user1731468
文档必须转换为“IHTMLDocument2”,以便您有权访问'execScript'方法...如果它仍然无法正常工作,请发布确切的错误消息。 –