Windows installer 如何查找已安装MSI的用户

Windows installer 如何查找已安装MSI的用户,windows-installer,Windows Installer,在安装过程中,用户选择了“当前用户”选项,而不是安装UI中的“所有用户”。我想由其他用户强制删除该安装,并使用“所有用户”选项安装升级的MSI。我发现,删除某些注册表项将实现我的目标 现在,我想找到哪个用户安装了特定的MSI,这样我就可以确定正确的注册表路径。有什么选择吗 问候,, Madhan我不知道一种简单的方法(例如查询某个regkey),但windows installer API中有一个函数名为 它要求您指定一个用户SID,如果您使用SID“s-1-1-0”,它将为所有用户查询所有已安

在安装过程中,用户选择了“当前用户”选项,而不是安装UI中的“所有用户”。我想由其他用户强制删除该安装,并使用“所有用户”选项安装升级的MSI。我发现,删除某些注册表项将实现我的目标

现在,我想找到哪个用户安装了特定的MSI,这样我就可以确定正确的注册表路径。有什么选择吗

问候,,
Madhan

我不知道一种简单的方法(例如查询某个regkey),但windows installer API中有一个函数名为

它要求您指定一个用户SID,如果您使用SID“s-1-1-0”,它将为所有用户查询所有已安装的产品

我不知道这在漫游配置文件中的表现


如果这对您不起作用,则评论中建议的解决方案(遍历所有用户或在登录时触发某些内容)是否正确我不知道一种简单的方法(例如,查询一些注册表项),但windows installer API中有一个名为

它要求您指定一个用户SID,如果您使用SID“s-1-1-0”,它将为所有用户查询所有已安装的产品

我不知道这在漫游配置文件中的表现


如果这不适用于您,则评论中建议的解决方案(遍历所有用户或在登录时触发某些内容)是正确的

多个用户可能已经安装了应用程序并选择了“当前用户”选项。我同意多个用户安装同一MSI的方案。我想找到所有安装了MSI的用户。对于特定场景,我们只希望支持“所有用户”,并希望在迁移期间删除单个用户的安装。您要查找的信息仅存在于每个用户配置文件中。(香港大学注册处)。您可以尝试浏览HKEY_USERS\xxxx\SOFTWARE\Classes\Installer,但在某些漫游配置文件场景中,数据将不在那里供您查看。有时,在这种情况下,需要在登录时运行实用程序,因为这是确保数据在范围内的唯一可用时间。我正在探索替代机制。但如果没有其他选项可用,我需要求助于Christopher Painter建议的方法。从性能角度来看,搜索HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData是否比搜索HKEY_用户更好?可能有多个用户安装了应用程序并选择了“当前用户”选项。我同意多个用户安装相同MSI的方案。我想找到所有安装了MSI的用户。对于特定场景,我们只希望支持“所有用户”,并希望在迁移期间删除单个用户的安装。您要查找的信息仅存在于每个用户配置文件中。(香港大学注册处)。您可以尝试浏览HKEY_USERS\xxxx\SOFTWARE\Classes\Installer,但在某些漫游配置文件场景中,数据将不在那里供您查看。有时,在这种情况下,需要在登录时运行实用程序,因为这是确保数据在范围内的唯一可用时间。我正在探索替代机制。但如果没有其他可用的选项,我需要求助于Christopher Painter建议的方法。从性能角度来看,搜索HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData是否比搜索HKEY_用户更好?我使用下面的帖子获得上述API的托管API。我使用下面的帖子来获取上面API的托管API。