我想用C#语言开发一个扩展,以获得Windows操作系统上所有已安装的软件沿着许可证信息。
要做到这一点,首先,我提到了Windows注册表,但在这个解决方案中,我们知道一些许可证没有存储在注册表中,并且一些许可证密钥可能被加密或混淆。因此,作为第二个解决方案,我使用“Win32_Product”WMI类,但这个解决方案可能需要一些时间来执行,特别是在安装了大量软件产品的机器上。此外,并非所有软件产品都可以通过WMI获得许可证信息,因此某些许可证信息可能为空。作为最后一个解决方案,我想使用Osquery,但它需要“Slmgr”作为第三方工具,应该安装在所有机器上。
如何使用C#获取Windows操作系统上安装的所有软件沿着相应的许可证信息?
1条答案
按热度按时间1cklez4t1#
你可以get a list of all applications。但是没有可能的方法来可靠地获得许可证密钥或其他许可证信息。应用程序可以按照需要管理许可证。
我们将许可证密钥作为应用程序配置的一部分存储在配置文件或数据库中。如果不知道您正在寻找什么,您就无法将其与任何其他配置分开。许可证信息甚至可能不在计算机上,应用程序完全有可能在启动时进行在线身份验证。