我想在Microsoft.Office.Interop
添加对当前项目的引用,但我只能选择
但我可以在GAC中找到它们
现在我选择通过导航到GAC中的路径来添加它们
我仍然有一个问题,为什么我可以在GAC中安装它们(已安装Office 2013)但在尝试添加引用时无法在Visual Studio 2012中找到它们? < / p>
答案 0 :(得分:3)
您假设VS对话框列出了GAC中的程序集是错误的。它列出了引用程序集,它们从不应该存储在GAC中。 GAC仅包含运行时程序集,它们可以在存在安全性或错误修复更新时随时更改。参考程序集必须是稳定的,以便在以后重建项目时重现完全相同的构建。
PIA已经过时,不应再使用了。您找到的是在c:\ windows \ assembly中的旧CLR v2 GAC中。它们仅适用于使用旧VS版本VS2008及之前构建的项目。 CLR v4 GAC存储在c:\ windows \ microsoft.net \ assembly中。您不会在那里找到任何Office互操作程序集。
Microsoft不像Office旧版本那样为Office 2013提供PIA下载。它们已被.NET 4.0 / VS2010&#34; Embed Interop Types&#34;彻底和优雅地取代。特征。 Aka&#34;没有PIA&#34;特征。您必须改为从COM选项卡添加引用。喜欢&#34; Microsoft Word 15.0对象库&#34;与2013版Word交互。您无需随程序一起提供任何内容,也无需在用户的计算机上安装PIA,Word互操作类型在构建时嵌入到您的程序中。