为了在vista / win7机器中部署COM dll,需要实现什么是COM接口。我听说有一些东西需要处理与COM的UAC帐户, 但我找不到MSDN页面,请帮助。
谢谢
答案 0 :(得分:1)
注册COM对象所需要的只是write the appropriate keys到注册表。在Vista上没有特殊的界面可以实现;但是,您需要确保您的安装程序具有管理权限,以便它实际上可以写入注册表。默认情况下,程序将作为中等完整性级别的应用程序运行,这些应用程序无法写入HKLM和HKCR(通常)。如果使用MSI进行安装(查看WiX toolkit;它可以轻松注册COM对象),那么操作系统将在安装时自动提示用户提升。
答案 1 :(得分:1)
如果要部署COM控件,则可能是应用程序安装的一部分。
在这种情况下,可以使用应用程序清单来实现Registration free COM。 (链接的文章在.NET部分而不是MSDN的Windows部分,但适用于Win32开发和部署)。
答案 2 :(得分:0)
没有特殊的COM接口,但您必须具有提升的权限才能运行regsvr32.exe来注册您的COM dll。如果使用MSI进行安装,则当安装程序尝试注册COM dll时,Vista应自动提示UAC提升。
此处有关于Vista上的UAC问题的更多信息 http://blogs.msdn.com/vcblog/archive/2006/09/06/742187.aspx