1

我的安装程序有一个需要注册的 COM dll。

我试图在 win7 32 位“标准用户”下运行我的安装程序,但它失败了,因为 COM dll 注册需要管理员权限。除此之外,我的应用程序不需要任何管理员权限即可工作。

有什么办法可以解决这个问题。我需要为非管理员用户运行我的应用程序。

4

2 回答 2

3

每个用户注册(例如 reg.exe 导入 HKCU)不需要管理员。请参阅非管理员 ActiveX 控件

于 2012-06-21T00:06:33.110 回答
1

COM 组件无需注册即可使用。

您可以使用CoRegisterClassObject为对象注册 IClassFactory 接口。如果您实现 COM 对象,则此方法有效。

您可以调用 LoadLibrary 来获取 dll 的DllGetclassObject入口点,并直接使用类工厂创建对象。

您可以创建一个简单的 XML 文件,将 COM dll 作为程序集公开。将程序集添加为您的应用程序的依赖程序集,您就可以注册免费 Com

于 2012-07-03T20:59:14.327 回答