2010-05-18 57 views
3

我正在开发Office应用程序。它最初的目标是.net 3.5,但我决定升级到.net 4,因为我遇到了一些WPF问题。将VSTO项目升级到.net 4 - 我实际需要哪些参考?

当我切换解决方案中的所有项目并重建时,出现错误说要包含System.Xaml。我做到了这一点,并重建,VS2010告诉我包括另一个参考,所以我做到了。这发生了几次,最后它要求我包含Microsoft.Office.Tools.Common.v9.0,并且当我这样做时,我得到这个错误:

Microsoft.Office.Tools.CustomTaskPaneCollection存在于Microsoft .Office.Tools.Common.v9.0.dll和Microsoft.Office.Tools.Common.dll

我同时引用了Microsoft.Office.Tools.Common.v9.0和Microsoft.Office.Tools.Common我的项目,但问题是,如果我删除,我得到一个错误。难道我做错了什么?奇怪的是,我需要两个引用吗?我觉得很奇怪CustomTaskPaneCollection会在两个不同的二进制文件中定义。

如果我删除了Microsoft.Office.Tools.Common,我得到的错误是“找不到匹配嵌入式互操作类型的互操作类型'Microsoft.Office.Tools.IAddInExtension'。您是否缺少程序集引用? “

回答

2

'Microsoft.Office.Tools.IAddInExtension'只是Microsoft.Office.Tools.Common.dll的一部分。因此删除Microsoft.Office.Tools.Common.v9.0应该不成问题。 但是,如果您的任何引用或涉及的项目中都添加了Microsoft.Office.Tools.Common.v9.0,则需要将其更改为Microsoft.Office.Tools.Common.dll。一旦你这样做,它应该解决你的问题。基准是,在将目标平台更改为4.0(如果其中任何一个正在使用VSTO dll)后,需要重新编译所有项目/参考dll。

希望有所帮助。