delphi 中的 OLE 错误 805303E?
你好 我正在测试一个在 geckobrowser(Delphi 中的 gecko 组件)中加载 html 代码的函数。 此处函数
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;
您遇到过这样的错误吗?
hello
I am testing a function to load an html code in a geckobrowser (gecko component in Delphi).
Here the function
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;
but the programme show an error of type "OLE ERROR 805303E8". I traced execution and found that the problem is in the line: domhtmldoc.Write (nsstr.AString)
the function "write" is declared in the interface of my component:
nsIDOMHTMLDocument = interface(nsIDOMDocument)
procedure Writeln(const text: nsAString); safecall;
.....
end;
Have you encountered such an error?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我使用了一个临时解决方案,需要创建一个临时文件,然后使用 gecko 加载 do。但有了这个解决方案,我就不能后退一步。
这就是为什么我寻求另一个允许我在网页上进行更改的解决方案。
谢谢你的帮助
I used a temporary solution that needs to create a temporary file and then load do with the gecko. but with this solution, I can not make a step backwards.
that's why I seek another solution that allows me to make change on the webpage.
thancks for your help