我有一个小python程序,我为一个朋友编写,其中一个任务是审计运行它的机器上的Office版本和产品密钥。在
我可以很容易地在注册表中找到32位/64位的键,但在新的Office2010系统上,我的算法似乎出了问题。在
我的第一个问题是现在HKLM\Software\Microsoft\Office\14.0\Common\Registration
下有30多个条目
虽然似乎只有一个条目有DigitalProductID
,但是这个条目没有关于这个套件的信息。(仅限于其中的个别产品)
我需要提取安装的office版本,即Office 2010 Home & Student
,我在键中唯一能找到的是Office 2010
奇怪的是,在以前的office版本中,全名为w/edition的key条目现在在安装了H&S后报告为Professional。在
似乎DigitalProductID
的解码算法已经改变。在2000-2007年,同样的代码正确地解码了ID,现在似乎产生了一个完全错误的代码。在
我找不到关于office2010的任何信息,所有的结果都让我回到了旧版本,与我以前制作此工具时使用的信息相同。在
我需要完成的任务:
Office 2010 Home & Student
)
Office2010的位置可能正确,但解码密钥的算法必须与2007不同。在
今天我们在3台新笔记本电脑上输入了3个新的CD密钥,而旧的2007年工作算法返回了一个错误的CD密钥。在
你必须从DigitalProductID中读取另一部分
在CSharp里我用过
对于(int ilByte=52;ilByte<;=66;ilByte++)
阅读计算O2K-O2K7的产品密钥所需的部分。在
对于Office 2010,您需要使用
对于(int ilByte=808;ilByte<;=822;ilByte++)
读取构成产品密钥的字节。在
关于套房,我也不知道从登记处把它拿出来。 也许有必要联系WMI了解这些信息。在
相关问题 更多 >
编程相关推荐