当我尝试从Delphi应用程序加载COM可见C#.net程序集时,在Windows Server 2012上弹出“该类未配置为支持提升激活”错误。
有没有办法将其配置为以编程方式支持提升激活?
目前要避免,将权限级别设置为“以管理员身份运行”。
答案 0 :(得分:4)
CO_E_ELEVATION_DISABLED
错误。如果类没有在注册表中正确注册提升,则可能会发生这种情况。您可以在MSDN中找到如何注册它:
COM类也必须注释为LUA-Enabled。这需要以下注册表项:
HKEY_LOCAL_MACHINE\Software\Classes\CLSID {CLSID} Elevation Enabled = 1
如果缺少此条目,则激活将返回错误CO_E_ELEVATION_DISABLED。
请注意,这些条目必须存在于HKEY_LOCAL_MACHINE配置单元中,而不是HKEY_CURRENT_USER或HKEY_USERS配置单元中。这可以防止用户提升他们没有注册权限的COM类。
此博客文章中有更多信息: