2012-07-14 103 views
0

我想使用Microsoft.Office.Interop.xxxxxxx命名空間,但Visual Studio 2010未提供「互操作」選項。我已經爲office12和office14安裝了PIA,我已將它們包含在解決方案資源管理器的「參考」中,但它不起作用。PIA的已安裝但仍然收到互操作錯誤

的代碼我試圖調用命名空間是:

using Excel = Microsoft.Office...; 

後「辦公室」,我只給出了「核心」的選項。所以它看起來是這樣的

using Excel = Microsoft.Office.Core; 

這匹配了被導入的引用......但使用這個命名空間似乎沒有用。

我的問題是如何讓Microsoft.Office.Interop選項被接受並顯示在intellisense中?

實施例:

using Excel = Microsoft.Office.Interop.Excel; 
接收關於「互操作」 = 「類型或命名空間名稱‘互操作’不存在於命名空間‘Microsoft.Office’存在(是否缺少的組件參考

錯誤消息?)

我在Solution Explorer中加載的程序集是「Microsoft Office 14.0 Object Library」TypeLib 2.5版。程序集路徑=「C:\ Program Files \ Common Files \ Microsoft Shared \ OFFICE14 \ MSO.DLL

Th任何建議anks!

回答

1

您沒有選擇正確的參考。改爲使用「Microsoft Excel 14.0對象庫」。

請注意,VS2010支持裝配參考的Embed Interop Types屬性。您真的想將其用於Office應用程序,不需要PIA。它會自動設置爲True。

+0

漢斯,謝謝你的回覆。我在添加引用> .NET下找到了引用Microsoft.Office.Interop.Excel,而不是COM,它正在工作。 – Chris 2012-07-14 21:00:25

+0

我實際上在COM選項卡中找不到那個。你是否知道一個可以解釋你提到的「嵌入式互操作類型」的源代碼? – Chris 2012-07-14 21:10:49

+0

你有另一個問題。如果你沒有看到它在我給你的名字的COM選項卡中列出,那麼你沒有在機器上安裝Office,並且你不能測試你的代碼。只是PIA不夠好。你需要解決這個問題。 – 2012-07-14 21:11:47

相關問題