【问题标题】:Is it possible to build a .NET DLL with COM visible types without VS requiring elevation?是否可以在 VS 不需要提升的情况下构建具有 COM 可见类型的 .NET DLL?
【发布时间】:2011-07-22 01:20:41
【问题描述】:

项目中的程序集具有用 ComVisible(true) 标记的类型。

在构建(非提升)时,VS 尝试注册该 DLL 并失败:

无法注册程序集“\path\to\foo.dll” - 访问被拒绝。请确保您以管理员身份运行该应用程序。拒绝访问注册表项“HKEY_CLASSES_ROOT\CLSID{FFC174A1-CC90-4E25-A3F6-C30B03368250}”。

我们真的不希望 DLL 在构建机器上注册。我们只想在为最终用户安装它时注册它。

那么是否可以在不注册 DLL 的情况下进行构建?

【问题讨论】:

    标签: visual-studio com uac elevation comvisible


    【解决方案1】:

    那么是否可以在不注册 DLL 的情况下进行构建?

    是的。在“Build”下的项目设置(右键单击“Properties”)中,有一个“register for COM interop”复选框。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-25
      • 2020-04-26
      • 2011-07-07
      • 1970-01-01
      • 2011-10-16
      • 2011-01-15
      相关资源
      最近更新 更多