[英]Casting System.__ComObject to known type reflection
我正在嘗試使用反射創建一個Excel文件。 原因是,該應用程序將在許多可能安裝或未安裝excel的計算機上運行。 我決定嵌入“ Microsoft.Office.Interop.Excel.dll”,並通過反射生成了Excel電子表格。
我試圖類似於的代碼是:
Dim app as new Excel.Application
Dim wb as Excel.Workbook = app.Workbooks.Add(1)
Dim ws as Excel.Worksheet = wb.Worksheets(1)
目前,一切正常,除非我檢索對工作表實例的引用,該實例作為“ System .__ ComObject”返回。
有沒有一種方法可以將“ System .__ ComObject”轉換為“工作表類型”?
我知道底層的“ System .__ ComObject”的類型為“ Worksheet”,因為在對象上搜索屬性后引發的異常給我錯誤,表明它實際上是“ Worksheet”類型。 例如:“類型工作表不顯示某些屬性,...”
任何幫助表示贊賞,
謝謝
您需要將__ComObject放入運行時可調用包裝器RCW中。 您可以看一下: CreateWrapperOfType
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.