好友
阅读权限 30
听众
最后登录 1970-1-1
HPKEr
发表于 2011-1-29 17:44
本帖最后由 HPKEr 于 2011-1-29 17:51 编辑
【文章标题】: 租车行管理系统V1.8暴破+算法分析+注册机
【文章作者】: HPKEr
【软件名称】: 租车行管理系统
【软件大小】: 1.58 MB
【下载地址】: http://945520.qupan.cc/6945148.html
【编写语言】: Borland Delphi 6.0 - 7.0
【使用工具】: OD PEID0.95
【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
--------------------------------------------------------------------------------
【详细过程】
我机器序列号:232397168
TestCode:123456789012
随便找个方法让程序断下来,分析如下:
004CFF0C /. 55 PUSH EBP
004CFF0D |. 8BEC MOV EBP,ESP
004CFF0F |. B9 04000000 MOV ECX,4
004CFF14 |> 6A 00 /PUSH 0
004CFF16 |. 6A 00 |PUSH 0
004CFF18 |. 49 |DEC ECX
004CFF19 |.^ 75 F9 \JNZ SHORT Rent.004CFF14
004CFF1B |. 51 PUSH ECX
004CFF1C |. 53 PUSH EBX
004CFF1D |. 8BD8 MOV EBX,EAX
004CFF1F |. 33C0 XOR EAX,EAX
004CFF21 |. 55 PUSH EBP
004CFF22 |. 68 6F014D00 PUSH Rent.004D016F
004CFF27 |. 64:FF30 PUSH DWORD PTR FS:[EAX]
004CFF2A |. 64:8920 MOV DWORD PTR FS:[EAX],ESP
004CFF2D |. 8D55 FC LEA EDX,DWORD PTR SS:[EBP-4]
004CFF30 |. 8B83 04030000 MOV EAX,DWORD PTR DS:[EBX+304]
004CFF36 |. E8 1D62F9FF CALL Rent.00466158 ; 取假码
004CFF3B |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4] ; 假码:123456789012入EAX
004CFF3E |. E8 1547F3FF CALL Rent.00404658 ; 计算假码位数为:12位
004CFF43 |. 83F8 0C CMP EAX,0C
004CFF46 |. 74 3F JE SHORT Rent.004CFF87 ; 不为零,后面就会提示“注册码错误!”
004CFF48 |. 6A 10 PUSH 10
004CFF4A |. 8D55 F8 LEA EDX,DWORD PTR SS:[EBP-8]
004CFF4D |. A1 384B5300 MOV EAX,DWORD PTR DS:[534B38]
004CFF52 |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
004CFF54 |. E8 A768FBFF CALL Rent.00486800
004CFF59 |. 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
004CFF5C |. E8 F748F3FF CALL Rent.00404858
004CFF61 |. 50 PUSH EAX
004CFF62 |. 68 7C014D00 PUSH Rent.004D017C ; 注册码错误!
004CFF67 |. 8BC3 MOV EAX,EBX
004CFF69 |. E8 EACBF9FF CALL Rent.0046CB58
004CFF6E |. 50 PUSH EAX ; |hOwner
004CFF6F |. E8 4075F3FF CALL <JMP.&user32.MessageBoxA> ; \MessageBoxA
004CFF74 |. 8B83 04030000 MOV EAX,DWORD PTR DS:[EBX+304]
004CFF7A |. 8B10 MOV EDX,DWORD PTR DS:[EAX]
004CFF7C |. FF92 C4000000 CALL DWORD PTR DS:[EDX+C4]
004CFF82 |. E9 9B010000 JMP Rent.004D0122
004CFF87 |> 8D55 F4 LEA EDX,DWORD PTR SS:[EBP-C]
004CFF8A |. 8B83 04030000 MOV EAX,DWORD PTR DS:[EBX+304]
004CFF90 |. E8 C361F9FF CALL Rent.00466158
004CFF95 |. 8B45 F4 MOV EAX,DWORD PTR SS:[EBP-C]
004CFF98 |. 50 PUSH EAX
004CFF99 |. 8D55 F0 LEA EDX,DWORD PTR SS:[EBP-10]
004CFF9C |. 8B83 00030000 MOV EAX,DWORD PTR DS:[EBX+300]
004CFFA2 |. E8 B161F9FF CALL Rent.00466158 ; 计算序列号:232397168
004CFFA7 |. 8B45 F0 MOV EAX,DWORD PTR SS:[EBP-10] ; 序列号:232397168入EAX
004CFFAA |. 5A POP EDX
004CFFAB |. E8 94F8FFFF CALL Rent.004CF844 ; 计算CALL,F7跟进
004CFFB0 |. 84C0 TEST AL,AL
004CFFB2 |. 0F84 30010000 JE Rent.004D00E8
004CFFB8 |. A1 38495300 MOV EAX,DWORD PTR DS:[534938]
004CFFBD |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
004CFFBF |. 8B80 5C030000 MOV EAX,DWORD PTR DS:[EAX+35C]
004CFFC5 |. E8 6619FDFF CALL Rent.004A1930
004CFFCA |. A1 38495300 MOV EAX,DWORD PTR DS:[534938]
004CFFCF |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
004CFFD1 |. 8B80 5C030000 MOV EAX,DWORD PTR DS:[EAX+35C]
004CFFD7 |. E8 58A0FEFF CALL Rent.004BA034
004CFFDC |. 8B10 MOV EDX,DWORD PTR DS:[EAX]
004CFFDE |. FF52 44 CALL DWORD PTR DS:[EDX+44]
004CFFE1 |. A1 38495300 MOV EAX,DWORD PTR DS:[534938]
004CFFE6 |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
004CFFE8 |. 8B80 5C030000 MOV EAX,DWORD PTR DS:[EAX+35C]
004CFFEE |. E8 41A0FEFF CALL Rent.004BA034
004CFFF3 |. BA 94014D00 MOV EDX,Rent.004D0194 ; delete from config where item='regcode'
004CFFF8 |. 8B08 MOV ECX,DWORD PTR DS:[EAX]
004CFFFA |. FF51 38 CALL DWORD PTR DS:[ECX+38]
004CFFFD |. A1 38495300 MOV EAX,DWORD PTR DS:[534938]
004D0002 |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
004D0004 |. 8B80 5C030000 MOV EAX,DWORD PTR DS:[EAX+35C]
004D000A |. E8 4D9FFEFF CALL Rent.004B9F5C
004D000F |. A1 38495300 MOV EAX,DWORD PTR DS:[534938]
004D0014 |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
004D0016 |. 8B80 5C030000 MOV EAX,DWORD PTR DS:[EAX+35C]
004D001C |. E8 13A0FEFF CALL Rent.004BA034
004D0021 |. 8B10 MOV EDX,DWORD PTR DS:[EAX]
004D0023 |. FF52 44 CALL DWORD PTR DS:[EDX+44]
004D0026 |. 68 C4014D00 PUSH Rent.004D01C4 ; insert into config values('regcode','
004D002B |. 8D55 E8 LEA EDX,DWORD PTR SS:[EBP-18]
004D002E |. 8B83 04030000 MOV EAX,DWORD PTR DS:[EBX+304]
004D0034 |. E8 1F61F9FF CALL Rent.00466158
004D0039 |. FF75 E8 PUSH DWORD PTR SS:[EBP-18]
004D003C |. 68 F4014D00 PUSH Rent.004D01F4 ; ')
004D0041 |. 8D45 EC LEA EAX,DWORD PTR SS:[EBP-14]
004D0044 |. BA 03000000 MOV EDX,3
004D0049 |. E8 CA46F3FF CALL Rent.00404718
004D004E |. 8B45 EC MOV EAX,DWORD PTR SS:[EBP-14]
004D0051 |. 50 PUSH EAX
004D0052 |. A1 38495300 MOV EAX,DWORD PTR DS:[534938]
004D0057 |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
004D0059 |. 8B80 5C030000 MOV EAX,DWORD PTR DS:[EAX+35C]
004D005F |. E8 D09FFEFF CALL Rent.004BA034
004D0064 |. 5A POP EDX
004D0065 |. 8B08 MOV ECX,DWORD PTR DS:[EAX]
004D0067 |. FF51 38 CALL DWORD PTR DS:[ECX+38]
004D006A |. A1 38495300 MOV EAX,DWORD PTR DS:[534938]
004D006F |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
004D0071 |. 8B80 5C030000 MOV EAX,DWORD PTR DS:[EAX+35C]
004D0077 |. E8 E09EFEFF CALL Rent.004B9F5C
004D007C |. 8D55 E4 LEA EDX,DWORD PTR SS:[EBP-1C]
004D007F |. 8B83 04030000 MOV EAX,DWORD PTR DS:[EBX+304]
004D0085 |. E8 CE60F9FF CALL Rent.00466158
004D008A |. 8B55 E4 MOV EDX,DWORD PTR SS:[EBP-1C]
004D008D |. A1 68455300 MOV EAX,DWORD PTR DS:[534568]
004D0092 |. E8 5543F3FF CALL Rent.004043EC
004D0097 |. 6A 40 PUSH 40
004D0099 |. 8D55 E0 LEA EDX,DWORD PTR SS:[EBP-20]
004D009C |. A1 384B5300 MOV EAX,DWORD PTR DS:[534B38]
004D00A1 |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
004D00A3 |. E8 5867FBFF CALL Rent.00486800
004D00A8 |. 8B45 E0 MOV EAX,DWORD PTR SS:[EBP-20]
004D00AB |. E8 A847F3FF CALL Rent.00404858
004D00B0 |. 50 PUSH EAX
004D00B1 |. 68 F8014D00 PUSH Rent.004D01F8 ; 注册成功!
004D00B6 |. 8BC3 MOV EAX,EBX
004D00B8 |. E8 9BCAF9FF CALL Rent.0046CB58
004D00BD |. 50 PUSH EAX ; |hOwner
004D00BE |. E8 F173F3FF CALL <JMP.&user32.MessageBoxA> ; \MessageBoxA
004D00C3 |. A1 C84C5300 MOV EAX,DWORD PTR DS:[534CC8]
004D00C8 |. C600 01 MOV BYTE PTR DS:[EAX],1
004D00CB |. A1 38495300 MOV EAX,DWORD PTR DS:[534938]
004D00D0 |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
004D00D2 |. 8B80 1C030000 MOV EAX,DWORD PTR DS:[EAX+31C]
004D00D8 |. 33D2 XOR EDX,EDX
004D00DA |. E8 995FF9FF CALL Rent.00466078
004D00DF |. 8BC3 MOV EAX,EBX
004D00E1 |. E8 4E34FBFF CALL Rent.00483534
004D00E6 |. EB 3A JMP SHORT Rent.004D0122
004D00E8 |> 6A 10 PUSH 10
004D00EA |. 8D55 DC LEA EDX,DWORD PTR SS:[EBP-24]
004D00ED |. A1 384B5300 MOV EAX,DWORD PTR DS:[534B38]
004D00F2 |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
004D00F4 |. E8 0767FBFF CALL Rent.00486800
004D00F9 |. 8B45 DC MOV EAX,DWORD PTR SS:[EBP-24]
004D00FC |. E8 5747F3FF CALL Rent.00404858
004D0101 |. 50 PUSH EAX
004D0102 |. 68 7C014D00 PUSH Rent.004D017C ; 注册码错误!
004D0107 |. 8BC3 MOV EAX,EBX
004D0109 |. E8 4ACAF9FF CALL Rent.0046CB58
004D010E |. 50 PUSH EAX ; |hOwner
004D010F |. E8 A073F3FF CALL <JMP.&user32.MessageBoxA> ; \MessageBoxA
004D0114 |. 8B83 04030000 MOV EAX,DWORD PTR DS:[EBX+304]
004D011A |. 8B10 MOV EDX,DWORD PTR DS:[EAX]
004D011C |. FF92 C4000000 CALL DWORD PTR DS:[EDX+C4]
004D0122 |> 33C0 XOR EAX,EAX
004D0124 |. 5A POP EDX
004D0125 |. 59 POP ECX
004D0126 |. 59 POP ECX
004D0127 |. 64:8910 MOV DWORD PTR FS:[EAX],EDX
004D012A |. 68 76014D00 PUSH Rent.004D0176
004D012F |> 8D45 DC LEA EAX,DWORD PTR SS:[EBP-24]
004D0132 |. BA 02000000 MOV EDX,2
004D0137 |. E8 8042F3FF CALL Rent.004043BC
004D013C |. 8D45 E4 LEA EAX,DWORD PTR SS:[EBP-1C]
004D013F |. BA 02000000 MOV EDX,2
004D0144 |. E8 7342F3FF CALL Rent.004043BC
004D0149 |. 8D45 EC LEA EAX,DWORD PTR SS:[EBP-14]
004D014C |. E8 4742F3FF CALL Rent.00404398
004D0151 |. 8D45 F0 LEA EAX,DWORD PTR SS:[EBP-10]
004D0154 |. BA 02000000 MOV EDX,2
004D0159 |. E8 5E42F3FF CALL Rent.004043BC
004D015E |. 8D45 F8 LEA EAX,DWORD PTR SS:[EBP-8]
004D0161 |. E8 3242F3FF CALL Rent.00404398
004D0166 |. 8D45 FC LEA EAX,DWORD PTR SS:[EBP-4]
004D0169 |. E8 2A42F3FF CALL Rent.00404398
004D016E \. C3 RETN
004D016F .^ E9 483BF3FF JMP Rent.00403CBC
004D0174 .^ EB B9 JMP SHORT Rent.004D012F
004D0176 . 5B POP EBX
004D0177 . 8BE5 MOV ESP,EBP
004D0179 . 5D POP EBP
004D017A . C3 RETN
F7跟进 CALL Rent.004CF844 ; 计算CALL,F7跟进
代码如下:
004CF844 /$ 55 PUSH EBP
004CF845 |. 8BEC MOV EBP,ESP
004CF847 |. 83C4 F4 ADD ESP,-0C
004CF84A |. 53 PUSH EBX
004CF84B |. 56 PUSH ESI
004CF84C |. 33C9 XOR ECX,ECX
004CF84E |. 894D F4 MOV DWORD PTR SS:[EBP-C],ECX
004CF851 |. 8955 F8 MOV DWORD PTR SS:[EBP-8],EDX ; 假码:123456789012入堆栈0012F200
004CF854 |. 8945 FC MOV DWORD PTR SS:[EBP-4],EAX ; 序列号:232397168入堆栈0012F204
004CF857 |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
004CF85A |. E8 E94FF3FF CALL Rent.00404848
004CF85F |. 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
004CF862 |. E8 E14FF3FF CALL Rent.00404848
004CF867 |. 33C0 XOR EAX,EAX ; EAX清零
004CF869 |. 55 PUSH EBP
004CF86A |. 68 F7F84C00 PUSH Rent.004CF8F7
004CF86F |. 64:FF30 PUSH DWORD PTR FS:[EAX]
004CF872 |. 64:8920 MOV DWORD PTR FS:[EAX],ESP
004CF875 |. 33DB XOR EBX,EBX ; EBX清零
004CF877 |. 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
004CF87A |. E8 D94DF3FF CALL Rent.00404658 ; 取假码位数
004CF87F |. 83F8 0C CMP EAX,0C
004CF882 |. 75 58 JNZ SHORT Rent.004CF8DC ; 不等于12位,EAX清零,退出。
004CF884 |. 8D45 F4 LEA EAX,DWORD PTR SS:[EBP-C]
004CF887 |. 50 PUSH EAX
004CF888 |. B9 08000000 MOV ECX,8
004CF88D |. BA 05000000 MOV EDX,5
004CF892 |. 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8] ; 假码:123456789012入EAX
004CF895 |. E8 1E50F3FF CALL Rent.004048B8 ; 取假码后八位“56789012”
004CF89A |. BE 01000000 MOV ESI,1
004CF89F |> 8B45 FC /MOV EAX,DWORD PTR SS:[EBP-4] ; 序列号:232397168入EAX
004CF8A2 |. 8A4430 FF |MOV AL,BYTE PTR DS:[EAX+ESI-1] ; 序列号第一位:32入AL
004CF8A6 |. E8 39FEFFFF |CALL Rent.004CF6E4 ; 根据序列号第一位数字值,来取假码第几位,我这取第五位(返回值为:34)
004CF8AB |. 8B55 F4 |MOV EDX,DWORD PTR SS:[EBP-C] ; 假码余下:56789012入EDX
004CF8AE |. 3A4432 FF |CMP AL,BYTE PTR DS:[EDX+ESI-1] ; EAX=34与第一位35比较
004CF8B2 |. 75 28 |JNZ SHORT Rent.004CF8DC ; 结果不为零,EAX清零,退出。
004CF8B4 |. 46 |INC ESI ; 计数器加1
004CF8B5 |. 83FE 03 |CMP ESI,3 ; ESI值不为3就继续循环
004CF8B8 |.^ 75 E5 \JNZ SHORT Rent.004CF89F
004CF8BA |. BE 03000000 MOV ESI,3
004CF8BF |> 8B45 FC /MOV EAX,DWORD PTR SS:[EBP-4] ; 序列号:232397168入EAX
004CF8C2 |. 8A4430 FF |MOV AL,BYTE PTR DS:[EAX+ESI-1] ; 序列号第一位入AL
004CF8C6 |. E8 19FEFFFF |CALL Rent.004CF6E4 ; 这里计算同004CF8A6一样,返回值ASCII码为:34
004CF8CB |. 8B55 F4 |MOV EDX,DWORD PTR SS:[EBP-C] ; 剩余假码:56789012入EDX
004CF8CE |. 3A4432 03 |CMP AL,BYTE PTR DS:[EDX+ESI+3] ; 这里取剩余假码:56789012的第7位与序列号返回值:4比较
004CF8D2 |. 75 08 |JNZ SHORT Rent.004CF8DC ; 结果不为零,EAX清零,退出
004CF8D4 |. 46 |INC ESI
004CF8D5 |. 83FE 05 |CMP ESI,5
004CF8D8 |.^ 75 E5 \JNZ SHORT Rent.004CF8BF
004CF8DA |. B3 01 MOV BL,1
004CF8DC |> 33C0 XOR EAX,EAX
004CF8DE |. 5A POP EDX
004CF8DF |. 59 POP ECX
004CF8E0 |. 59 POP ECX
004CF8E1 |. 64:8910 MOV DWORD PTR FS:[EAX],EDX
004CF8E4 |. 68 FEF84C00 PUSH Rent.004CF8FE
004CF8E9 |> 8D45 F4 LEA EAX,DWORD PTR SS:[EBP-C] ; 剩余假码:56789012入EAX
004CF8EC |. BA 03000000 MOV EDX,3
004CF8F1 |. E8 C64AF3FF CALL Rent.004043BC
004CF8F6 \. C3 RETN
004CF8F7 .^ E9 C043F3FF JMP Rent.00403CBC
004CF8FC .^ EB EB JMP SHORT Rent.004CF8E9
004CF8FE . 8BC3 MOV EAX,EBX
004CF900 . 5E POP ESI
004CF901 . 5B POP EBX
004CF902 . 8BE5 MOV ESP,EBP
004CF904 . 5D POP EBP
004CF905 . C3 RETN
F7跟进CALL Rent.004CF6E4 典型Switch语句,代码如下:
004CF6E4 /$ 25 FF000000 AND EAX,0FF
004CF6E9 |. 83C0 D0 ADD EAX,-30 ; Switch (cases 30..39)
004CF6EC |. 83F8 09 CMP EAX,9
004CF6EF |. 77 4D JA SHORT Rent.004CF73E
004CF6F1 |. FF2485 F8F64C>JMP DWORD PTR DS:[EAX*4+4CF6F8]
004CF6F8 |. 20F74C00 DD Rent.004CF720 ; Switch table used at 004CF6F1
004CF6FC |. 23F74C00 DD Rent.004CF723
004CF700 |. 26F74C00 DD Rent.004CF726
004CF704 |. 29F74C00 DD Rent.004CF729
004CF708 |. 2CF74C00 DD Rent.004CF72C
004CF70C |. 2FF74C00 DD Rent.004CF72F
004CF710 |. 32F74C00 DD Rent.004CF732
004CF714 |. 35F74C00 DD Rent.004CF735
004CF718 |. 38F74C00 DD Rent.004CF738
004CF71C |. 3BF74C00 DD Rent.004CF73B
004CF720 |> B0 38 MOV AL,38 ; Case 30 ('0') of switch 004CF6E9
004CF722 |. C3 RETN
004CF723 |> B0 36 MOV AL,36 ; Case 31 ('1') of switch 004CF6E9
004CF725 |. C3 RETN
004CF726 |> B0 34 MOV AL,34 ; Case 32 ('2') of switch 004CF6E9
004CF728 |. C3 RETN
004CF729 |> B0 30 MOV AL,30 ; Case 33 ('3') of switch 004CF6E9
004CF72B |. C3 RETN
004CF72C |> B0 35 MOV AL,35 ; Case 34 ('4') of switch 004CF6E9
004CF72E |. C3 RETN
004CF72F |> B0 32 MOV AL,32 ; Case 35 ('5') of switch 004CF6E9
004CF731 |. C3 RETN
004CF732 |> B0 39 MOV AL,39 ; Case 36 ('6') of switch 004CF6E9
004CF734 |. C3 RETN
004CF735 |> B0 31 MOV AL,31 ; Case 37 ('7') of switch 004CF6E9
004CF737 |. C3 RETN
004CF738 |> B0 33 MOV AL,33 ; Case 38 ('8') of switch 004CF6E9
004CF73A |. C3 RETN
004CF73B |> B0 37 MOV AL,37 ; Case 39 ('9') of switch 004CF6E9
004CF73D |. C3 RETN
004CF73E |> 33C0 XOR EAX,EAX ; Default case of switch 004CF6E9
004CF740 \. C3 RETN
软件注册成功图:
主程序界面图:
暴力破解 图:
暴力破解主程序界面图:
软件注册机源码(C源码)如下:
#include "stdafx.h"
#include "string.h"
int main(int argc, char* argv[])
{
char serial[20];
int seriallen;
printf("请输入序列号=");
gets(serial);
seriallen=strlen(serial);
if(seriallen<9 || seriallen>9)
{
printf("你输入的序列号不正确,请重新输入!\n");
return 0;
}
printf("注册码=");
for(int i=0;i<=1;i++)
{
char temp;
temp=serial;
int conter=temp-48;
if(conter > 9 || conter < 0)
return 0;
switch(conter)
{
case 0:
serial[7]=8+48;break;
case 1:
serial[5]=6+48;break;
case 2:
serial[i+4]=4+48;serial[9]=48;serial[10]=52;serial[11]=48;break;
case 3:
serial[i+4]=0+48;break;
case 4:
serial[4]=5+48;break;
case 5:
serial[1]=2+48;break;
case 6:
serial[8]=9+48;break;
case 7:
serial[0]=1+48;break;
case 8:
serial[2]=3+48;break;
case 9:
serial[6]=7+48;break;
}
}
for(int j=0;j<=11;j++)
{
printf("%c",serial[j]);
}
printf("\n");
return 0;
}
序列号:232397168
注册码:232340168040
--------------------------------------------------------------------------------
【经验总结】
1.此软件作者引用注册算法有误(其中有些代码缺失),导致计算注册码固定模式。
2.此软件序列号固定(一般软件的序列号是通过获取机器硬件得到,而此软件安装在任何机器上,序列号相同......),导致计算出注册码也固定 。
3.通过此软件注册码计算模块,算出注册码,用此注册码注册,提示成功,但是重启软件后,还会出现注册框。
4.此软件作者有欺骗用户嫌疑 。
5.通过修改试用时间值,也可以达到破解目的,(压缩包里含有破解文件)此软件试用时间为:100年。
6.压缩包包含注册机及注册机使用说明。
7.另附注册机源码,通过VC6.0开发环境测试通过。
8.此软件通过调用Rent3.mdb文件,进行存储、删除、修改等车辆管理信息。
9.Rent3.mdb数据库文件,数据库密码为:ynduanlian里面有管理员用户名:admin初次登录密码为空。
--------------------------------------------------------------------------------
【版权声明】: 本文原创于吾爱破解 技术论坛, 转载请注明作者并保持文章的完整, 谢谢!
2011年01月29日 上午 17:40:00
免费评分
查看全部评分