能力值:
( LV2,RANK:10 )
|
-
-
2 楼
大神可以帮忙嘛~~~
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
楼主你应该出点赏,才有人理你
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
试了,不懂得怎么破解。diskno.exe程序好像是获取硬盘序列号的,但运行后什么也没有。注册窗口好像不在main.exe里,好像拦截不到。
最后于 2018-5-23 20:51
被ptcdxhz编辑
,原因:
|
能力值:
( LV9,RANK:270 )
|
-
-
5 楼
要固定这个机器码,很简单:
1. 将安装文件夹中"acc"和"reg"文件夹里的两个diskno.exe程序改名,或备份后删除;
2. 修改"acc\SYSTEM.INI"文件里disk节serialno的内容为你想固定的机器码;
[disk]
serialno=544455379
3. 运行主程序,“注册”,输入你的注册码。
相关信息
主程序和其他功能模块调用kernel32.CreateProcessA带参数运行diskno.exe,获得本机硬盘序列号(写到或从SYSTEM.INI读取):
diskno.exe "C:\Program Files\金禾电子\金禾税务师事务所代理记账软件\acc\system.ini"
它会调用kernel32.GetVolumeInformationA取卷序列号。这里第一个参数:
string drivers
if drivers = "C" then
drivers = "D"
else
drivers = "C"
end if
代码这样写是有问题的,如果软件安装在C:盘,又没有D:逻辑卷的话,diskno.exe就会失败,报"硬盘系列号没有获得,请和软件供应商联系!"。
所以serialno实际上是逻辑卷的序列号(Volume Serial Number),544455379对应C:盘或D:盘的卷序列号:2073-BAD3。
注册部分,用一个自定义函数计算本机注册码,然后与输入的进行字符串比较:
本机注册码 = 函数(硬盘序列号, 版本, 帐套数, 每帐套户数, 可结帐月份数);
我按此函数用C写出的keygen与它的结果有时不一致,仔细检查发现它这个函数里又有一个错误!
("544455379", 1, 300, 300, 12)对应的注册码应该是:FMKWKBFAMAVD。
PowerBuilder的代码没有秘密可言,估计现在也基本没人用它写程序了,但调试PCODE的程序需要技巧和经验。
最后于 2018-5-25 17:00
被MistHill编辑
,原因: 排版出现多余tag
|
|
|