为啥我的参考的复制本地属性被禁用?
Posted
技术标签:
【中文标题】为啥我的参考的复制本地属性被禁用?【英文标题】:Why is the Copy Local property for my reference disabled?为什么我的参考的复制本地属性被禁用? 【发布时间】:2013-03-09 17:18:32 【问题描述】:我正在尝试将引用的 DLL 设置为显式复制到我的本地文件夹,但是当我转到此引用的属性时,Copy Local
属性灰显/禁用。
通常我的 VB.NET 项目在项目名称正下方有一个 My Project
项目,我可以双击 >> 引用并设置 Copy Local
属性,但是我的 C# 控制台应用程序似乎没有这个。
我是否可能错误地配置了我的项目?对此的任何帮助将不胜感激。
【问题讨论】:
将“嵌入互操作类型”更改为 false。 【参考方案1】:Directly from this SO post:
您对 Hans 回答的评论表明这是一个 COM 程序集,并且 您正在使用 Visual Studio 2010。
这意味着程序集引用可能添加了“嵌入 互操作类型”设置设置为 true。这具有链接 COM 组装到您的二进制文件中,无需部署它 共。以下链接有更详细的解释 •http://msdn.microsoft.com/en-us/library/dd409610.aspx如果你这样做 想要部署它,但需要执行以下操作 •单击 参考选项卡中的参考 •按 F4 调出 属性网格 •将“嵌入互操作类型”设置为 False(这将不灰色 复制本地) •设置“复制本地”为真
如果要复制本地,则必须将程序集的Embed Interop Types
设置为False
,在您的情况下为Microsoft.Office.Interop.Excel
。嵌入互操作类型使 COM 程序集的部署更容易,因为它将程序集嵌入到您的程序集中,无需使用应用程序部署互操作程序集。
【讨论】:
有趣的附注,您需要将属性框设置为分类而不是按字母顺序排列。由于某种原因,字母表锁定了更改功能以上是关于为啥我的参考的复制本地属性被禁用?的主要内容,如果未能解决你的问题,请参考以下文章