delphi 中的 OLE 错误 805303E?

发布于 2024-10-31 16:04:16 字数 806 浏览 0 评论 0原文

你好 我正在测试一个在 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

往日情怀 2024-11-07 16:04:17

我使用了一个临时解决方案,需要创建一个临时文件,然后使用 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

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文