是否有可能获得安装微软软件和序列号?

我想要在机器上安装所有已安装的Microsoft软件的列表。 我认为这将做的工作,但问题是,我需要有已安装的Microsoft应用程序的序列号。

有没有任何OS SDK或第三方工具?

试试这个列表 。 我已经亲自使用了这个名单上的第一个项目,魔法果冻豆Keyfinder,它符合我的需求。 我需要为那些丢失了这些信息的个人计算机获得Office和Windows的密钥。 你可以看看这个列表,看它们是否符合你的需要,甚至是可用的源代码,以便你可以修改它以适应你的需求。 祝你好运。

编辑

直接链接魔法果冻豆 。

既然你标记了这个C#,我将假设你想要实际创build你自己的程序来检索这个信息。 制作你自己的程序,列出计算机上所有已安装的软件,并在适用的情况下检索产品密钥是完全可行的(并且实际上非常简单)。

大多数软件发行商都有自己的方法来编码产品序列号(通常埋在registry中),所以滚动你自己的程序的一个缺点是你必须维护几种不同的algorithm来解码各种产品密钥。

上一次,我寻找一个algorithm来解码我的程序的微软的产品密钥是不久前,但我很难在互联网上find任何algorithm。 我最终偶然发现了Pete列出的魔法果冻豆Keyfinder,以及SourceForge上的源代码(看起来这个项目已经演变成了Enchanted Keyfinder )。 它是用Pascal编程的,我当然不是Pascal程序员,但是我设法在一个下午(包括通常的来自$DayJob中断)将它转换成C#而没有任何实际问题。

我们发现了一件非常重要的事情,如果你自己开发软件,或者使用其他一些重要的软件,这也是相关的。 如果软件预装在计算机上(例如,OEM Windows),则返回的产品密钥是OEM产品密钥,而不是产品的实际密钥。 您的安装介质将不接受此产品密钥,因为它来自不同的分销渠道。

如果您想在您的所有计算机上运行程序,节省了一些时间,而无需手动logging产品密钥,我想您会感到失望。 就像我说的,每个软件发行商都有不同的做法,没有标准。 当计算机出现故障后重新安装软件时,程序将不可能对一个软件的产品密钥进行解码,并且总是最关键的一个。

真正无法替代您手动input许可证信息的专用软件,并且会跟踪您的使用情况。

我个人使用MSKeyViewer Plus的免费软件,似乎很适合我的需求。 希望这可以帮助。