2015-05-03 40 views
0

我寫了一個.NET加載項,即與版本12(office 2007)的參考辦公室互操作程序集。當我在裝有版本14的互聯網的計算機上加載加載項時,Office成功加載該版本(它重定向到辦公室14)。Office運行互操作需要不同版本的

BUT(這裏談到的問題),在一些機器上它仍然需要儘管14版版本存在12。放置版本12修復了這些機器上的問題,但是爲什麼會發生這種情況?

+0

您是否考慮過COM互操作程序集引用的'Embed Interop Types'選項?這應該可以解決你的問題。 – Govert

+1

我很驚訝,有2k代表的人不知道不要使用「提前致謝」。事實上,我看到你在所有問題上都這樣做。 –

+1

請參閱「[應該'嗨','謝謝''標語和致敬辭職](http://meta.stackexchange.com/questions/2950/should-hi-thanks-taglines-and-salutations -12-移除 - 從帖子中) –

回答

0

確保您不使用在以後的Office版本(2010年以後)推出methds和屬性。因此,您將確定您的加載項在運行時不會觸發異常。

以下的Running Solutions in Different Versions of Microsoft Office頁面狀態:通過使用Visual Studio 2013,Visual Studio的2012或Visual Studio 2010可以在Office 2013,Office 2010中,或2007 Microsoft Office系統運行中創建的

解決方案。但是,該解決方案只能使用Office的所有三個版本中提供的那些功能和API。

但(這裏出現問題),在某些機器上,它仍然需要版本12,儘管版本14存在。放置版本12修復了這些機器上的問題,但爲什麼會發生?

加載項不應該依賴於安裝在PIA的。您只需將所需的PIA包含到安裝程序中,並使用Office版本最低的API即可。就這樣。

相關問題