2008-12-02 64 views
3

我正在使用C#.NET中的一些代碼,用於在瀏覽器中調用Javascript並從Javascript調用中獲取返回值的Internet Explorer擴展。當Javascript返回一個原始類型或一個原始類型的數組時,我得到了一些我可以處理的東西,但是當Javascript返回一個對象時,我得到一個不透明的COM對象。將IHTMLDocument2.Script.InvokeMember()返回的COM對象轉換爲有用的東西

如何獲取COM對象的內容,或者是否有更好的方法從C#.NET調用IE?

回答

2

查看InvokeMember documentation底部的註釋。如果返回值是一個JavaScript對象,則您正在接收圍繞javascript對象的.NET對象包裝器。你將不得不使用反射來檢查/調用底層JavaScript對象的成員。這非常合理,因爲javascript是一種動態語言,而C#則不是。

相關問題