簡體   English   中英

是否有適用於 Office365 和 Visual Studio 2010 的 PIA?

[英]Is there a PIA for Office365 and Visual Studio 2010?

是否有適用於 Office365 和 Visual Studio 2010 的 PIA? 如果是這樣,我如何獲得它? 如果不是,那么等價物是什么? 我的 PC 上沒有用於 Office365 或 Office 14 以外的任何 PIA。 上下文:我將所有文件/文件夾從舊 PC 遷移到新 PC。 涉及的系統安裝了以下系統: 舊:Windows 7(64 位)、Office 2007、Visual Studio 2010 Professional 新:Windows 10(64 位)、Office365、Visual Studio 2010 Professional

我的大部分工作涉及 Excel VBA 例程,調用啟用 COM 的類庫 (.dll) 來獲取和操作各種數據,然后 .dll 將結果返回到 Excel 以進行顯示和/或其他操作。 類庫是我使用 VS2010 VB.Net 編寫的。 所有這些都在我的舊電腦上按預期工作。

我的問題的第一個跡象是這個警告:C:\\Windows\\Microsoft.NET\\Framework\\v4.0.30319\\Microsoft.Common.targets(2015,5):警告 MSB3304:無法確定 COM 引用的依賴關系“Microsoft .Office.Interop.Excel”。 未找到元素。 (來自 HRESULT 的異常:0x8002802B (TYPE_E_ELEMENTNOTFOUND)),這是我在嘗試使用 Visual Studio 2010 重建類庫程序集時得到的。

由於這是一個警告,我在調試模式下繼續。 我的啟動項目是一個測試應用程序,它使用測試工作簿啟動 Excel。 在該工作簿中,我有一些代碼嘗試設置我的 .dll 實例,即導入 Microsoft.Office.Interop.Excel 的 .dll。 它錯誤地顯示以下消息:嘗試創建 StockDataTest.Tester 實例時出錯。 錯誤是:運行時錯誤“429:ActiveX 組件無法創建對象”。

我懷疑運行時錯誤與構建時間警告有關,並且一直基於這種懷疑進行搜索和探索。 我懷疑它不必為 Office365/VS2010 做 PIA。 復制到新機器后第一次打開這個解決方案,VS210將舊引用改為“Microsoft.Office.Interop.Excel”。 引用實際指的是 C:\\Windows\\assembly\\GAC_MSIL\\Microsoft.Office.Interop.Excel\\15.0.0.0__71e9bce111e9429c\\Microsoft.Office.Interop.Excel.dll 這是它無法確定的依賴項.

任何幫助將不勝感激。

當前在任何計算機上安裝的 Office 版本的 PIA 位於 GAC 中。 默認情況下,Visual Studio 將在其自己的文件夾中查找它們 - Visual Studio 會安裝與其版本對應的最新 Office PIA 版本。

因此,您需要使用 COM 選項卡來引用一組不同的 PIA。 COM PIA 的名稱與 Visual Studio 安裝的名稱有些不同。 我記得,它們以“Microsoft”開頭,例如“Microsoft.Excel”(我目前使用的是移動設備)。

通過卸載我的 64 位版本的 Office 365 並將離線版本安裝為 32 位解決了該問題。 經過非常有限的調整以適應 32 位版本后,問題解決了。 我不確定是離線安裝還是更改為 32 位,或者兩者都需要更改。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM