2012-02-29 66 views
1

我有一個使用Excel生成一些報告的Windows窗體應用程序。 直到現在使用2003年,但我已經升級到2007年。我已經在我的機器上安裝了2003,2007和2010年,並且我的應用程序引用了Microsoft.office.core,v 12.0和microsoft.office.interop.excel v 12.0。 但在我的代碼,當我這樣做:升級到Excel 2007 - 應用程序仍然使用2003 interop

using Excel = Microsoft.Office.Interop.Excel; 
...... 
Excel.Application excelApp = new Excel.Application(); 
string v = excelApp.Version; 

v將是11.0。 另外,路徑參考

C:\Windows\assembly\GAC_MSIL\Microsoft.Office.Interop.Excel\14.0.0.0__71e9bce111e9429c\Microsoft.Office.Interop.Excel.dll 

這是怎麼發生的? 任何ideea我如何解決它?

謝謝!

回答

2

你不應該保留兩個版本(至少在你的開發機器上)。在你的客戶端機器上,它不應該是一個問題。通常在這種情況下,你的代碼應該加載2007 PIA。我建議你應該修理。或者做一個完整的2007年全新安裝。或小提琴與註冊表,並設置活動版本爲12(我不推薦)

+0

如果您正在爲用戶開發應用程序,則需要使用他們正在使用的版本進行測試,因此您需要訪問全套版本。我確信它是@Siddharth Rout建議在單獨的虛擬PC上安裝每個版本。也許他會發佈一個答案告訴你如何做到這一點。 – 2012-02-29 14:06:30

相關問題