2012-08-14 96 views
0

我一直在嘗試爲C#Outlook 2003加載項創建部署。它只需要NET 2.0並依賴於IDTExtensibility2(Extensibility.dll的)。在確定安裝了Office 2003 PIA之後,加載項仍然不會註冊,因爲Could not load file or assembly 'Extensibility, Version=7.0.3300.0, Culture=nuetral, PublicKeyToken=b03f57f11d50a3a' or one of its dependencies. Strong name validation failed. (Exception from HRESULT: 0x8013141A)Office 2003和extensibility.dll部署藍色

我不認爲部署Extensiblity.dll是合法的,即使是這樣,我也無法使其工作。那麼如何確保它在目標PC上可用?

我無法在任何地方找到適當的解決方案。

該解決方案在2010年VS

+0

您的加載項是否已簽名?當我的應用程序已經簽名但我所引用的dll沒有時,我遇到了類似的問題。 – 2012-08-14 16:41:17

+0

它是強名稱簽名,沒有數字簽名(Authenticode)。 – wpfwannabe 2012-08-14 16:57:59

回答

1

開發如果你的Outlook插件是使用強名稱密鑰,然後您引用也將需要強名稱簽名的任何外部庫簽署。

我有一個類似的問題在過去你那裏的第三方庫沒有用強名稱簽名。

+0

謝謝!但Extensibility.dll不過是一個微軟自己的DLL,並且已經強名。 – wpfwannabe 2012-08-15 08:32:11

1

做了一些周圍搜索後,我碰到this Microsoft Support article,提供了一個解決方案。

簡單:

When you use Microsoft Visual Studio 2005 to create add-ins, smart documents, or smart tags, you may experience the following symptoms:

  • The add-ins, the smart documents, or the smart tags cannot be loaded in any Microsoft Office application.
  • The add-ins, the smart documents, or the smart tags do not run in any version of Microsoft Office.

及其解決方案:

To resolve this problem for Visual Studio 2005 developers, a redistributable version of the update for Visual Studio 2005 is available.

+0

謝謝!我也發現了這一點,但這並沒有幫助,因爲安裝了修復版本2005,對於最終用戶來說這顯然是不可能的。除此之外,我的解決方案是在VS 2010中開發的,並且使用了NET 2.0,所以它不適用於我的開發環境(無論如何,一切都按預期工作)。 – wpfwannabe 2012-08-15 15:24:12

0

發現Extensibility.dll在

\ Visual Studio工具用於Office \ PIA \共同

文件夾。複製到項目文件夾。

我VSTO 2010年增加了引用到我的項目,和編譯錯誤就走開了。相同版本的錯誤:7.0.3300.0。 VSTO由Microsoft爲開發人員免費分發,爲Microsoft Office創建解決方案,但隨VSTO 2010附帶的許可證文檔不允許您複製它,除非您自己使用。話雖如此,我會糾纏微軟的dll,顯然你需要它爲你的項目。顯然,他們應該爲許可證添加一個條款以允許開發人員分發dll。

相關問題