2010-02-25 52 views
3

在vista/win7机器上部署COM DLL需要实现哪些COM接口。我听说有些东西需要处理与COM的UAC帐户, 但我找不到MSDN页面,请帮忙。VISTA的COM部署

谢谢

回答

1

所有你所要做的注册COM对象是write the appropriate keys到注册表中。在Vista上没有特殊的界面来实现;但是,您需要确保您的安装程序具有管理权限,以便它实际上可以写入注册表。默认情况下,程序将作为中等完整性级别的应用程序运行,不能写入HKLM和HKCR(一般情况下)。如果您使用MSI安装(查看WiX toolkit;它使注册COM对象变得容易),那么操作系统将在安装时自动提示用户提升。

+1

如果您决定使用WiX,请查看“使用WiX安装程序复制COM注册”:http://stackoverflow.com/questions/543995/replicating-visual-studio-com-registration-with-a- wix安装程序为我的痛苦,但启发性的旅程沿着这条路。 – 2010-02-25 05:29:09

+0

谢谢你的信息,我也发现http://msdn.microsoft.com/en-us/library/ms679687(VS.85).aspx(COM Elevation Moniker),我需要是否有东西需要处理我的COM关于上面的链接,如果我使用WiX。 – Nimo 2010-02-25 06:05:44

1

如果要部署一个COM控制这里的一些详细信息,关于UAC的问题,它可能是作为应用程序安装的一部分。

在这种情况下,可以使用应用程序清单来实现Registration free COM。 (链接的文章位于.NET部分,而不是MSDN的Windows部分,但适用于Win32开发和部署)。