我在 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/