作者Privator (普萊斐特)
看板Visual_Basic
標題[.NET] 請問關於引用Excel Object Library的問題..
時間Mon Feb 8 16:52:30 2010
請輸入專案類型(網站專案或者應用程式專案):應用程式專案.
是這樣的, 我要在.Net專案裡呼叫以前用VB6 寫的ActiveX DLL 的函式..
因為那個函式裡有一項參數是Excel.Application,所以我必需在.Net裡new 一個Excel
Application 再傳進去, 現在問題來了..
我在.Net專案裡加入一個Microsoft Excel 11.0 Object Library 參考時, 它的名稱
為Microsoft.Office.Interop.Excel但是我傳入ActiveX DLL 時它要求參數必須為
Interop.Excel.Application,而非Microsoft.Office.Interop.Excel.Application.
我測試了很久, 最後發現, 原來project file裡Excel 的COMReference裡的
WrapperTool 是primary,如果我改為tlbimp, 那麼參考的Excel 名稱就會變成我要的
Interop.Excel,如果是原來的primary,就會產出Microsoft.Office.Interop.Excel.
目前將WrapperTool 改為tlbimp可以符合我的需要, 可是錯誤清單裡會有一個討厭的
警告訊息在裡面:
有更新的自訂包裝函式可供以下所參考的元件使用: Excel。
想請問兩點:
1.有沒有辦法把那個討厭的警告訊息拿掉?
2.同一個方案, 有的同事的電腦打開加入Excel 的參考時, 名稱就是
Interop.Excel,他的WrapperTool 就是tlbimp, 也沒有警告訊息, 我不
太清楚是怎樣的環境差異會造成我和他的不同, 有人可以幫忙解惑麼?
寫了一大堆, 我自己知道我寫的很亂, 請見諒, 有需要我補充的地方請提出來..
最後附上我的project 檔案裡關於Excel 參考的設定..
<COMReference Include="Excel">
<Guid>{00020813-0000-0000-C000-000000000046}</Guid>
<VersionMajor>1</VersionMajor>
<VersionMinor>5</VersionMinor>
<Lcid>0</Lcid>
<WrapperTool>tlbimp</WrapperTool>
<Isolated>False</Isolated>
</COMReference>
謝謝..
--
“我打算每天清晨起床,整天呼吸,過陣子我就不必提醒
自己起床呼吸;再過一陣子,我就不會想起過去的甜蜜。”
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 60.251.145.16
推 horngsh:用Option Strict Off可以嗎? 02/08 17:03
→ Privator:改成Option Strict Off應該不會讓warning消失.. ^^; 02/09 13:31