c# - COM 注册和 GAC

标签 c# com visual-studio-2005 installation gac

我在 Visual Studio 2005 中有一个 Web 项目、一个 C# 库项目和一个 Web 安装项目。Web 项目需要 C# 库,需要在 GAC 中注册。这很简单,只需将 GAC 文件夹添加到安装项目并将 C# 库的主要输出放在那里。还需要为 COM 互操作注册 C# 库。我单击选择 GAC 文件夹中的主要输出并将注册属性更改为 vsdrpCOM。我构建安装项目并运行它,但 DLL 从未为 COM 注册。

这对我来说并不奇怪。我总是不得不添加一个安装程序类,该类具有使用 RegistrationServices.RegisterAssembly 为 COM 正确注册我的 DLL 的自定义操作。因此,我将多年来接受的这种解决方法应用于我的情况。现在我发现在安装项目的 GAC 文件夹中分配给主要输出的自定义操作甚至会阻止安装项目的构建。

我一直觉得我在破解这些东西,让 .NET 和 COM 能够很好地处理设置和部署项目。解决我的问题的正确方法是什么?

最佳答案

要使用 COM 注册程序集,请使用:regasm/codebase。请参阅:http://msdn.microsoft.com/en-us/library/tzat5yw6(VS.80).aspx了解详情。你安装到 GAC 的方法对我来说似乎很好。

关于c# - COM 注册和 GAC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/163748/

相关文章:

c++ - 如何使分组框文本背景透明

c# - 返回中间字母或回文字母的函数

c++ - 连接两个 BSTR 的最佳方法是什么?

.net - 在.NET项目中使用COM组件而不使用GAC

c++ - 从 Visual Studio 2005 移植到 2008 或更高版本

winforms - 当我在 C++ Windows 窗体应用程序中添加 .settings 文件时,Visual Studio 崩溃

c# - 为什么 C# 不支持返回引用?

c# - DataGridTextColumn 可见性绑定(bind)

c# - 是否可以为 wp7 应用程序选择电话设置时间格式

c++ - 类 COM 接口(interface)警告非虚拟析构函数