查看单个帖子
旧 2008-12-08, 09:07 PM   #5
huangyhg
超级版主
 
huangyhg的头像
 
注册日期: 04-03
帖子: 18592
精华: 36
现金: 249466 标准币
资产: 1080358888 标准币
huangyhg 向着好的方向发展
默认 回复: 【转帖】IncrediBuild 3.10 试用时间复位工具

感谢 lionel 的分享
http://bbs.pediy.com/showthread.php?...t=IncrediBuild

3.31 版的产生方式没变.. Key 的位置为
3.31: HKCR\Interface\{6F8793A7-3226-4B51-98C1-476A0D1A7AFC}\ProxyStubClsid32

我用 Python 简单写个产生 value 的 script, 会自动产生今天 + 30 天的 value.



代码:
import struct, datetimeOLE_TIME_ZERO = datetime.datetime(1899, 12, 30, 0, 0, 0)def getDays(delta): return delta.days + delta.seconds / 86400.0 + delta.microseconds / 86400.0 / 1000000.0def ole2datetime(oledt): return OLE_TIME_ZERO + datetime.timedelta(days=float(oledt)) def datetime2ole(dt): d = dt - OLE_TIME_ZERO return getDays(d) def main(): d = datetime.datetime.now() + datetime.timedelta(30) oledate = datetime2ole(d) olestr = struct.pack('d', oledate) calArr = map(lambda x: ord(x), olestr) m1 = calArr[0] * calArr[1] * calArr[2] * calArr[3] m2 = calArr[4] * calArr[5] m3 = calArr[6] * calArr[7] value = '{%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}' % ( m1, m2, m3, calArr[0], calArr[1], calArr[2],calArr[3],calArr[4],calArr[5],calArr[6],calArr[7] ) print 'New keyvalue = %s' % (value) if __name__ == '__main__': main()
结果


代码:
D:\WorkingFolder\Python\IBTrial>python IBTrial.pyNew keyvalue = {0108C903-0BF4-38C0-7B1F-6F291E66E340}
__________________
借用达朗贝尔的名言:前进吧,你会得到信心!
[url="http://www.dimcax.com"]几何尺寸与公差标准[/url]
huangyhg离线中   回复时引用此帖