您好 我正在测试一个函数来加载geckobrowser中的html代码(Delphi中的gecko组件)。 这里的功能
procédure TCustomGeckoBrowser.LoadHTML (htmlCode: string);
var
domwindow: nsIDOMWindow;
domdoc: nsIDOMDocument;
domhtmldoc: nsIDOMHTMLDocument;
nsstr: IInterfacedString;
begin
domwindow: = GetContentWindow;
domdoc: = GetContentDocument;
domhtmldoc: = domdoc que nsIDOMHTMLDocument;
nsstr: = nouvelleChaine;
nsstr.Assign (htmlCode);
domhtmldoc.Write (nsstr.AString);
end;
但程序显示“OLE ERROR 805303E8”类型的错误。我追踪执行情况,发现问题在于:domhtmldoc.Write (nsstr.AString)
函数“write”在我的组件的接口中声明:
nsIDOMHTMLDocument = interface(nsIDOMDocument)
procedure Writeln(const text: nsAString); safecall;
.....
end;
您遇到过这样的错误吗?
答案 0 :(得分:0)
我使用了一个临时解决方案,需要创建一个临时文件,然后加载gecko。但是通过这个解决方案,我无法向后退一步。
这就是为什么我寻求另一种允许我在网页上进行更改的解决方案。 谢谢你的帮助