代码之家  ›  专栏  ›  技术社区  ›  Greg

将IHTMLDocument2.Script.InvokeMember()返回的COM对象转换为有用的对象

  •  3
  • Greg  · 技术社区  · 16 年前

    我正在使用C#.NET中的一些代码,用于在浏览器中调用Javascript并从Javascript调用中获取返回值的Internet Explorer扩展。当Javascript返回一个基元类型或基元类型数组时,我得到一些可以处理的东西,但是当Javascript返回一个对象时,我得到一个不透明的COM对象。

    如何获取COM对象的内容,或者是否有更好的方法从C#.NET调用IE?

    1 回复  |  直到 16 年前
        1
  •  2
  •   jlew    16 年前

    看看下面的评论 InvokeMember documentation . 如果返回值是一个javascript对象,那么您将收到一个围绕javascript对象的.NET对象包装器。您必须使用反射来检查/调用底层javascript对象的成员。这非常有意义,因为javascript是一种动态语言,而C#不是。