繁体   English   中英

VS 2012没有列出Microsoft.Office.Interop程序集,而它可以在GAC中找到

[英]VS 2012 does not list Microsoft.Office.Interop assembly while it can be found in GAC

我想在当前项目中添加对Microsoft.Office.Interop的引用,但我只能选择

在此输入图像描述

但我能够在GAC中找到它们

在此输入图像描述

现在我选择通过导航到GAC内的路径来添加它们

但我还有一个问题,为什么我可以在GAC中安装它们(Office 2013已安装)但在尝试添加引用时无法在Visual Studio 2012中找到它们?

您假设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那样为Office 2013提供PIA下载。 它们已被.NET 4.0 / VS2010“嵌入互操作类型”功能彻底和优雅地取代。 Aka“没有PIA”功能。 您必须改为从COM选项卡添加引用。 像“Microsoft Word 15.0对象库”一样与2013版Word互操作。 您无需随程序一起提供任何内容,也无需在用户的计算机上安装PIA,Word interop类型在构建时嵌入到您的程序中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM