C++\MSI无法注册Cli COM程序集

C++\MSI无法注册Cli COM程序集,com,c++-cli,windows-installer,Com,C++ Cli,Windows Installer,我的申请有一个严重的问题。我有一个本机应用程序,它使用一些托管类来工作。我创建了一个C++\Cli包装器,它是非托管代码和托管代码之间的代理 在这个代理项目中,我声明了一些公开的COM对象,它们的实现使用托管程序集中声明的C#对象 在我的开发环境中一切正常,但当我想在干净的系统上安装我的应用程序时,问题就出现了 我有一个MSI项目,应该使用vsdraCOM或vsdraCOMRelativePath注册此CLR代理。事实上,它们都不起作用。应用程序显示未注册特定对象(在此代理中定义)的错误 我可以

我的申请有一个严重的问题。我有一个本机应用程序,它使用一些托管类来工作。我创建了一个C++\Cli包装器,它是非托管代码和托管代码之间的代理

在这个代理项目中,我声明了一些公开的COM对象,它们的实现使用托管程序集中声明的C#对象

在我的开发环境中一切正常,但当我想在干净的系统上安装我的应用程序时,问题就出现了

我有一个MSI项目,应该使用vsdraCOMvsdraCOMRelativePath注册此CLR代理。事实上,它们都不起作用。应用程序显示未注册特定对象(在此代理中定义)的错误

我可以使用regsvr32手动注册这个dll,但是我想避免这种情况,让我的MSI包来帮我注册

我已经尝试在这个dll上使用Regasm,它说没有找到要注册的对象。所有公开的接口都在IDL文件中定义

您能告诉我如何使这些IDL定义的接口对regasm公开或可见吗

我可以使用regsvr32手动注册此dll,但我想 避免这种情况,让我的MSI包为我做

VisualStudio提供的注册选项供一般使用。如果它们不适合您,那么您需要确定文件需要如何注册,并使用自定义操作进行注册

如果使用regsvr32.exe有效,请在注册文件的自定义操作中使用它

我尝试在这个dll上使用Regasm,它说没有对象被删除 已找到以供注册

不一样。Regasm.exe注册程序集,regsv32.exe注册命令组件

您能告诉我如何公开这些IDL定义的接口吗 还是对帝王主义可见

Regasm.exe只能注册强命名程序集。您可以在此处阅读更多关于此的信息: