添加部件引用是否有任何副作用

本文关键字:任何 副作用 是否 引用 添加部 | 更新日期: 2024-04-03 07:18:52

我目前正在调查一个奇怪的错误,在这个错误中,仅仅在项目中添加某个程序集引用似乎会在运行时破坏另一个程序集的某些功能。有关详细信息,请参阅SO.上的另一个问题

添加程序集引用时会发生什么?它会有什么副作用?

添加部件引用是否有任何副作用

全局程序集缓存

不能从全局程序集缓存添加引用,因为它严格属于运行时环境的一部分。


自定义组件

如果部署或复制的应用程序包含对全局程序集缓存中注册的自定义组件的引用,则无论"本地复制"设置如何,都不会随应用程序部署或复制该组件。


另一个项目的产出

您应该避免将文件引用添加到同一解决方案中另一个项目的输出中,因为这样做可能会导致编译错误。相反,可以使用"添加参照"对话框的"项目"选项卡来创建项目到项目的参照。


已注册COM DLL

如果要添加对包含内部清单的已注册COM DLL的引用,请确保先注销该DLL。如果不这样做,Visual Studio会将程序集引用添加为ActiveX组件,而不是本机DLL。


EnvDTE命名空间

手动将引用添加到任何EnvDTE命名空间(EnvDTE、EnvDTE80、EnvDTE90、EnwDTE90a或EnvDTE100)时,请在"属性"窗口中将引用的"嵌入互操作类型"属性设置为False。将此属性设置为True可能会导致生成问题,因为某些EnvDTE属性无法嵌入。


参考:MSDN-如何在Visual Studio中添加或删除引用