飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

楼主: chinaren

[求助] 这个VB程序捆饶我好久了,请求高人解答

[复制链接]
  • TA的每日心情
    开心
    2018-10-30 22:05
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    发表于 2008-3-19 09:33:21 | 显示全部楼层
    学习,这个VB程序挺难的。。。。。。。。。。。。。。
    PYG19周年生日快乐!
  • TA的每日心情
    慵懒
    2019-2-17 18:27
  • 签到天数: 33 天

    [LV.5]常住居民I

    发表于 2008-3-21 10:22:36 | 显示全部楼层
    【文章标题】: 命中双色球本地验证分析
    【文章作者】: yingfeng
    【作者主页】: bbs.chinapyg.com
    【作者QQ号】: 反正不会是123456
    【软件名称】: 命中双色球
    【下载地址】: 自己搜索下载
    【加壳方式】: 无壳
    【保护方式】: 本地验证、网络验证、重启验证
    【使用工具】: OD
    【操作平台】: WinXP sp3
    【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
    --------------------------------------------------------------------------------
    【详细过程】
      因为是VB的程序,可以用VB-Explorer找注册按钮事件
      
      当然你也可根据错误码的对话框提示,下断或其它方法。
      
      00621ADE   > \55            push    ebp                              ;  注册按钮事件断下
      
      00621BEA   .  E8 1954DEFF   call    <jmp.&MSVBVM60.__vbaFreeVarList>
      00621BEF   .  83C4 0C       add     esp, 0C
      00621BF2   .  FF75 E4       push    dword ptr [ebp-1C]               ; /String
      00621BF5   .  E8 A652DEFF   call    <jmp.&MSVBVM60.__vbaLenBstr>     ; \__vbaLenBstr
      00621BFA   .  83F8 0F       cmp     eax, 0F
      00621BFD   .  0F84 9F000000 je      00621CA2                         ;  这里实现假码的长度比较是否为15位,要跳*****
      00621C03   .  C745 84 04000>mov     dword ptr [ebp-7C], 80020004
      00621C0A   .  C785 7CFFFFFF>mov     dword ptr [ebp-84], 0A
      00621C14   .  C745 94 04000>mov     dword ptr [ebp-6C], 80020004
      00621C1B   .  C745 8C 0A000>mov     dword ptr [ebp-74], 0A
      00621C22   .  C785 24FFFFFF>mov     dword ptr [ebp-DC], 00435F90     ;  ASCII "蚫\O衏:y"
      00621C2C   .  C785 1CFFFFFF>mov     dword ptr [ebp-E4], 8
      
      
      
      00621F35   .  8D45 8C       lea     eax, dword ptr [ebp-74]
      00621F38   .  50            push    eax
      00621F39   .  8D45 9C       lea     eax, dword ptr [ebp-64]
      00621F3C   .  50            push    eax
      00621F3D   .  8D45 AC       lea     eax, dword ptr [ebp-54]
      00621F40   .  50            push    eax
      00621F41   .  6A 08         push    8
      00621F43   .  E8 C050DEFF   call    <jmp.&MSVBVM60.__vbaFreeVarList>
      00621F48   .  83C4 24       add     esp, 24
      00621F4B   .  0FBF85 B8FEFF>movsx   eax, word ptr [ebp-148]
      00621F52   .  85C0          test    eax, eax
      00621F54   .  0F84 9F000000 je      00621FF9                         ;  这里即是比较所有的字符(机器码跟注册码)是不是特殊的符号
      
      同样要跳过。
      
      00621FFE   > \66:837D E8 0E cmp     word ptr [ebp-18], 0E            ;  这里又是进行长度比较是否少于15位,小于就OVER了***********
      00622003   .  0F8E 89050000 jle     00622592
      00622009   .  66:C785 A4FEF>mov     word ptr [ebp-15C], 0F           ;  这里把F入EBP-15C
      00622012   .  66:C785 A8FEF>mov     word ptr [ebp-158], 1            ;  这里把1入EBP-158
      0062201B   .  66:C745 E8 01>mov     word ptr [ebp-18], 1             ;  这里把1入EBP-18
      00622021   .  EB 15         jmp     short 00622038
      00622023   >  66:8B45 E8    mov     ax, word ptr [ebp-18]
      00622027   .  66:0385 A8FEF>add     ax, word ptr [ebp-158]
      0062202E   .  0F80 9A060000 jo      006226CE
      00622034   .  66:8945 E8    mov     word ptr [ebp-18], ax            ;  这是AX为计数器,进行循环计算
      00622038   >  66:8B45 E8    mov     ax, word ptr [ebp-18]            ;  这里是1入AX,开始都从第1位开始
      0062203C   .  66:3B85 A4FEF>cmp     ax, word ptr [ebp-15C]           ;  这里比较是否大于F
      00622043   .  0F8F 57020000 jg      006222A0                         ;  大于则跳走
      00622049   .  C745 B4 01000>mov     dword ptr [ebp-4C], 1            ;  把1入EBP-4C
      00622050   .  C745 AC 02000>mov     dword ptr [ebp-54], 2            ;  把2入EBP-54
      00622057   .  C785 34FFFFFF>mov     dword ptr [ebp-CC], 0066DA28     ;  0066DA28(6740520)
      00622061   .  C785 2CFFFFFF>mov     dword ptr [ebp-D4], 4008
      0062206B   .  8D45 AC       lea     eax, dword ptr [ebp-54]
      0062206E   .  50            push    eax                              ; /Length8
      0062206F   .  0FBF45 E8     movsx   eax, word ptr [ebp-18]           ; |这里是计数器I
      00622073   .  50            push    eax                              ; |Start
      00622074   .  8D85 2CFFFFFF lea     eax, dword ptr [ebp-D4]          ; |这里是4008
      0062207A   .  50            push    eax                              ; |dString8
      0062207B   .  8D45 9C       lea     eax, dword ptr [ebp-64]          ; |这里是字符串
      0062207E   .  50            push    eax                              ; |RetBUFFER
      0062207F   .  E8 3A4EDEFF   call    <jmp.&MSVBVM60.#632>             ; \rtcMidCharVar
      00622084   .  8D45 9C       lea     eax, dword ptr [ebp-64]
      00622087   .  50            push    eax                              ; /String8
      00622088   .  8D45 CC       lea     eax, dword ptr [ebp-34]          ; |
      0062208B   .  50            push    eax                              ; |ARG2
      0062208C   .  E8 034EDEFF   call    <jmp.&MSVBVM60.__vbaStrVarVal>   ; \__vbaStrVarVal
      00622091   .  50            push    eax                              ; /String
      00622092   .  E8 DF4DDEFF   call    <jmp.&MSVBVM60.#516>             ; \rtcAnsiValueBstr
      00622097   .  66:8945 DC    mov     word ptr [ebp-24], ax            ;  这里进行为48即48H
      0062209B   .  8D4D CC       lea     ecx, dword ptr [ebp-34]          ;  上面的CALL意思是把机器码的每位ASCII码取出*******
      0062209E   .  E8 0B4FDEFF   call    <jmp.&MSVBVM60.__vbaFreeStr>
      006220A3   .  8D45 9C       lea     eax, dword ptr [ebp-64]
      006220A6   .  50            push    eax
      006220A7   .  8D45 AC       lea     eax, dword ptr [ebp-54]
      006220AA   .  50            push    eax
      006220AB   .  6A 02         push    2
      006220AD   .  E8 564FDEFF   call    <jmp.&MSVBVM60.__vbaFreeVarList> ;  记为A
      006220B2   .  83C4 0C       add     esp, 0C
      006220B5   .  C745 B4 01000>mov     dword ptr [ebp-4C], 1
      006220BC   .  C745 AC 02000>mov     dword ptr [ebp-54], 2
      006220C3   .  8D45 E4       lea     eax, dword ptr [ebp-1C]
      006220C6   .  8985 34FFFFFF mov     dword ptr [ebp-CC], eax
      006220CC   .  C785 2CFFFFFF>mov     dword ptr [ebp-D4], 4008
      006220D6   .  8D45 AC       lea     eax, dword ptr [ebp-54]
      006220D9   .  50            push    eax                              ; /Length8
      006220DA   .  0FBF45 E8     movsx   eax, word ptr [ebp-18]           ; |
      006220DE   .  50            push    eax                              ; |Start
      006220DF   .  8D85 2CFFFFFF lea     eax, dword ptr [ebp-D4]          ; |
      006220E5   .  50            push    eax                              ; |dString8
      006220E6   .  8D45 9C       lea     eax, dword ptr [ebp-64]          ; |
      006220E9   .  50            push    eax                              ; |RetBUFFER
      006220EA   .  E8 CF4DDEFF   call    <jmp.&MSVBVM60.#632>             ; \rtcMidCharVar
      006220EF   .  8D45 9C       lea     eax, dword ptr [ebp-64]
      006220F2   .  50            push    eax                              ; /String8
      006220F3   .  8D45 CC       lea     eax, dword ptr [ebp-34]          ; |
      006220F6   .  50            push    eax                              ; |ARG2
      006220F7   .  E8 984DDEFF   call    <jmp.&MSVBVM60.__vbaStrVarVal>   ; \__vbaStrVarVal
      006220FC   .  50            push    eax                              ; /String
      006220FD   .  E8 744DDEFF   call    <jmp.&MSVBVM60.#516>             ; \rtcAnsiValueBstr
      00622102   .  66:8945 D8    mov     word ptr [ebp-28], ax            ;  这上面即是把注册码的每位ASCI码计算出来***********
      00622106   .  8D4D CC       lea     ecx, dword ptr [ebp-34]          ;  B
      00622109   .  E8 A04EDEFF   call    <jmp.&MSVBVM60.__vbaFreeStr>
      0062210E   .  8D45 9C       lea     eax, dword ptr [ebp-64]
      00622111   .  50            push    eax
      00622112   .  8D45 AC       lea     eax, dword ptr [ebp-54]
      00622115   .  50            push    eax
      00622116   .  6A 02         push    2
      00622118   .  E8 EB4EDEFF   call    <jmp.&MSVBVM60.__vbaFreeVarList>
      0062211D   .  83C4 0C       add     esp, 0C
      00622120   .  66:837D DC 30 cmp     word ptr [ebp-24], 30            ;  这里比较机器码每位是否为30
      00622125   .  7C 1B         jl      short 00622142
      00622127   .  66:837D DC 39 cmp     word ptr [ebp-24], 39            ;  这里比较是否为39
      0062212C   .  7F 14         jg      short 00622142
      0062212E   .  66:8B45 DC    mov     ax, word ptr [ebp-24]            ;  如机器码是0-9之间,则机器码的ASCII码-30
      00622132   .  66:2D 3000    sub     ax, 30
      00622136   .  0F80 92050000 jo      006226CE
      0062213C   .  66:8945 DC    mov     word ptr [ebp-24], ax
      00622140   .  EB 20         jmp     short 00622162
      00622142   >  66:837D DC 41 cmp     word ptr [ebp-24], 41            ;  如机器码不为0-9的数字,则-37
      00622147   .  7C 19         jl      short 00622162
      00622149   .  66:837D DC 5A cmp     word ptr [ebp-24], 5A
      0062214E   .  7F 12         jg      short 00622162
      00622150   .  66:8B45 DC    mov     ax, word ptr [ebp-24]            ;  这里为机器码的每一位
      00622154   .  66:2D 3700    sub     ax, 37                           ;  机器码第一位的ASCII码-37
      00622158   .  0F80 70050000 jo      006226CE
      0062215E   .  66:8945 DC    mov     word ptr [ebp-24], ax            ;
      00622162   >  66:837D D8 30 cmp     word ptr [ebp-28], 30            ;  这里跟注册码的第一位比较是否为0-9
      00622167   .  7C 1B         jl      short 00622184
      00622169   .  66:837D D8 39 cmp     word ptr [ebp-28], 39
      0062216E   .  7F 14         jg      short 00622184
      00622170   .  66:8B45 D8    mov     ax, word ptr [ebp-28]            ;  这里是注册码的每1位的ASCII码
      00622174   .  66:2D 3000    sub     ax, 30                           ;  这里把注册码的每一位-30,
      00622178   .  0F80 50050000 jo      006226CE
      0062217E   .  66:8945 D8    mov     word ptr [ebp-28], ax
      00622182   .  EB 20         jmp     short 006221A4
      00622184   >  66:837D D8 41 cmp     word ptr [ebp-28], 41
      00622189   .  7C 19         jl      short 006221A4
      0062218B   .  66:837D D8 5A cmp     word ptr [ebp-28], 5A
      00622190   .  7F 12         jg      short 006221A4
      00622192   .  66:8B45 D8    mov     ax, word ptr [ebp-28]
      00622196   .  66:2D 3700    sub     ax, 37
      0062219A   .  0F80 2E050000 jo      006226CE
      006221A0   .  66:8945 D8    mov     word ptr [ebp-28], ax
      006221A4   >  66:8B45 D8    mov     ax, word ptr [ebp-28]            ;  这里是上面的结果保存到AX中
      006221A8   .  66:05 4800    add     ax, 48                           ;  
      006221AC   .  0F80 1C050000 jo      006226CE
      006221B2   .  66:2B45 E8    sub     ax, word ptr [ebp-18]            ;  AX=AX-I(I为位)
      006221B6   .  0F80 12050000 jo      006226CE
      006221BC   .  66:2B45 DC    sub     ax, word ptr [ebp-24]
      006221C0   .  0F80 08050000 jo      006226CE
      006221C6   .  66:99         cwd
      006221C8   .  66:B9 2400    mov     cx, 24                           ;  把24放到CX中
      006221CC   .  66:F7F9       idiv    cx                               ;  这里是上面的结果除24
      006221CF   .  0FBFC2        movsx   eax, dx                          ;  把余数保存在EAX中
      006221D2   .  8945 D0       mov     dword ptr [ebp-30], eax          ;  再把入EBP-30中
      006221D5   .  837D D0 09    cmp     dword ptr [ebp-30], 9            ;  比较余数是否少于等于9
      006221D9   .  7E 61         jle     short 0062223C                   ;  如小于则跳向另位处理
      006221DB   .  8B45 D4       mov     eax, dword ptr [ebp-2C]
      006221DE   .  8985 34FFFFFF mov     dword ptr [ebp-CC], eax
      006221E4   .  C785 2CFFFFFF>mov     dword ptr [ebp-D4], 8            ;  
      006221EE   .  8B45 D0       mov     eax, dword ptr [ebp-30]          ;  这里是上次计数的余数
      006221F1   .  83C0 37       add     eax, 37                          ;  余数加上37
      006221F4   .  0F80 D4040000 jo      006226CE
      006221FA   .  50            push    eax
      006221FB   .  8D45 AC       lea     eax, dword ptr [ebp-54]
      006221FE   .  50            push    eax
      006221FF   .  E8 644EDEFF   call    <jmp.&MSVBVM60.#608>             ;  这里是把上面的结果转换成字符
      00622204   .  8D85 2CFFFFFF lea     eax, dword ptr [ebp-D4]
      0062220A   .  50            push    eax
      0062220B   .  8D45 AC       lea     eax, dword ptr [ebp-54]
      0062220E   .  50            push    eax
      0062220F   .  8D45 9C       lea     eax, dword ptr [ebp-64]
      00622212   .  50            push    eax
      00622213   .  E8 AC4CDEFF   call    <jmp.&MSVBVM60.__vbaVarCat>      ;  这里是把字符连结起来
      00622218   .  50            push    eax
      00622219   .  E8 D64CDEFF   call    <jmp.&MSVBVM60.__vbaStrVarMove>
      0062221E   .  8BD0          mov     edx, eax
      00622220   .  8D4D D4       lea     ecx, dword ptr [ebp-2C]
      00622223   .  E8 CE4DDEFF   call    <jmp.&MSVBVM60.__vbaStrMove>
      00622228   .  8D45 9C       lea     eax, dword ptr [ebp-64]
      0062222B   .  50            push    eax
      0062222C   .  8D45 AC       lea     eax, dword ptr [ebp-54]
      0062222F   .  50            push    eax
      00622230   .  6A 02         push    2
      00622232   .  E8 D14DDEFF   call    <jmp.&MSVBVM60.__vbaFreeVarList>
      00622237   .  83C4 0C       add     esp, 0C
      0062223A   .  EB 5F         jmp     short 0062229B
      0062223C   >  8B45 D4       mov     eax, dword ptr [ebp-2C]          ;  这里是上面分支处理,小于9 时
      0062223F   .  8985 34FFFFFF mov     dword ptr [ebp-CC], eax
      00622245   .  C785 2CFFFFFF>mov     dword ptr [ebp-D4], 8
      0062224F   .  8B45 D0       mov     eax, dword ptr [ebp-30]
      00622252   .  83C0 30       add     eax, 30                          ;  +30
      00622255   .  0F80 73040000 jo      006226CE
      0062225B   .  50            push    eax
      0062225C   .  8D45 AC       lea     eax, dword ptr [ebp-54]
      0062225F   .  50            push    eax
      00622260   .  E8 034EDEFF   call    <jmp.&MSVBVM60.#608>             ;  转换成字符
      00622265   .  8D85 2CFFFFFF lea     eax, dword ptr [ebp-D4]
      0062226B   .  50            push    eax
      0062226C   .  8D45 AC       lea     eax, dword ptr [ebp-54]
      0062226F   .  50            push    eax
      00622270   .  8D45 9C       lea     eax, dword ptr [ebp-64]
      00622273   .  50            push    eax
      00622274   .  E8 4B4CDEFF   call    <jmp.&MSVBVM60.__vbaVarCat>      ;  字符连接
      00622279   .  50            push    eax
      0062227A   .  E8 754CDEFF   call    <jmp.&MSVBVM60.__vbaStrVarMove>
      0062227F   .  8BD0          mov     edx, eax
      00622281   .  8D4D D4       lea     ecx, dword ptr [ebp-2C]
      00622284   .  E8 6D4DDEFF   call    <jmp.&MSVBVM60.__vbaStrMove>
      00622289   .  8D45 9C       lea     eax, dword ptr [ebp-64]
      0062228C   .  50            push    eax
      0062228D   .  8D45 AC       lea     eax, dword ptr [ebp-54]
      00622290   .  50            push    eax
      00622291   .  6A 02         push    2
      00622293   .  E8 704DDEFF   call    <jmp.&MSVBVM60.__vbaFreeVarList>
      00622298   .  83C4 0C       add     esp, 0C
      0062229B   >^ E9 83FDFFFF   jmp     00622023
      006222A0   >  8D45 D4       lea     eax, dword ptr [ebp-2C]
      006222A3   .  8985 34FFFFFF mov     dword ptr [ebp-CC], eax
      006222A9   .  C785 2CFFFFFF>mov     dword ptr [ebp-D4], 4008
      006222B3   .  8D85 2CFFFFFF lea     eax, dword ptr [ebp-D4]
      006222B9   .  50            push    eax
      006222BA   .  E8 B34CDEFF   call    <jmp.&MSVBVM60.#561>             ;  这个CALL*********,如果上面算出来的结果不是整数
      006222BF   .  0FBFC0        movsx   eax, ax                                 那么就OVER了
      006222C2   .  85C0          test    eax, eax                         ;  
      006222C4   .  0F85 9F000000 jnz     00622369****************(这里也要跳走)
      
      
      00622369   > \FF75 D4       push    dword ptr [ebp-2C]
      0062236C      E8 174BDEFF   call    <jmp.&MSVBVM60.__vbaI4Str>       ;  如果上面计算的不溢出,且都是数字,那么这个CALL就正常,否则你会卡死在这
      00622371   .  A3 64D16600   mov     dword ptr [66D164], eax
      00622376   .  66:C785 9CFEF>mov     word ptr [ebp-164], 0F              则会提出溢出
      0062237F   .  66:C785 A0FEF>mov     word ptr [ebp-160], 1
      00622388   .  66:C745 E8 01>mov     word ptr [ebp-18], 1
      0062238E   .  EB 15         jmp     short 006223A5
      00622390   >  66:8B45 E8    mov     ax, word ptr [ebp-18]
      00622394   .  66:0385 A0FEF>add     ax, word ptr [ebp-160]
      
      
      然后你就可以配全合F8跟F4很快到
      006224DA   .  6A 00         push    0
      006224DC   .  8D45 AC       lea     eax, dword ptr [ebp-54]
      006224DF   .  50            push    eax
      006224E0   .  E8 514ADEFF   call    <jmp.&MSVBVM60.#595>             ;  这里第一步成功对话框
      006224E5   .  8D85 7CFFFFFF lea     eax, dword ptr [ebp-84]
      006224EB   .  50            push    eax
      
    总结:
    机器码为取标准的取硬盘指纹的,如果不足15位,则前面+H0000凑足15位,没有分析(猜的)
    把i 作为一个常量
    begin
    FOR I := 1 to length(注册码长度或机器码长度)
    依次取出机器码的每位ASCII码
    A:=MID(机器码,I,1)
    IF A NOT IN(0-9) THEN
    A:=A-37(如果机器码的ASCII码为0-9之间,则减去37)
    ELSE
    A:=A-30 (反之则减去30)
    END
    依次取出注册码的每位ASCII码
    B:=MID(注册码,I,1)
    if b not in(0-9) then(如果不是0-9的数字)
    b:=b-37                   -37
    else
    b:=b-30                     如果是0-9则-30
    end
    f:=b+48-i                   +48-位置
    g:=f-A                       g=注册码计算结果-机器码计算结果
    cx:=24                            常量CONST
    h:=g mod 24(取余数)               
    if h <=9 then(是否少于等于9)
    h:=h+30        (分支处理)
    else
    h:=h+37       (分支处理)
    最后把h转换成字符边接输出,结果要不能溢出,且都为数字!

      
      呵呵!!!!!未完,先把本地验证分析了,网络验证没啥讲的,主要是重启验证,抽个时间
      
      也整理下,侍续………………
      
      
    --------------------------------------------------------------------------------
    【版权声明】: 本文原创于PYG技术论坛, 转载请注明作者并保持文章的完整, 谢谢!
                                                           2008年03月21日 2204:25

    评分

    参与人数 1威望 +80 飘云币 +200 收起 理由
    Nisy + 80 + 200 PYG有你更精彩!

    查看全部评分

    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2018-10-30 22:05
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    发表于 2008-3-21 11:29:34 | 显示全部楼层
    支持版主,学习知识。。。
    PYG19周年生日快乐!

    该用户从未签到

     楼主| 发表于 2008-3-21 13:33:44 | 显示全部楼层
    我是在第一次比较注册码位数,直接修改JMP到正确提示(完成本地验证)
    00621BFD   .  0F84 9F000000 je      00621CA2           ; 比较注册玛是否16位

    网络验证是用C32直接找到关键字符,修改了一个跳实现

    yingfeng的分析很精彩,膜拜ing...

    期待重启验证,我看到文件里有个MzLotto.dat不知道是不是关键..我尝试输入几十位数的注册码长度后,发现这个文件大小也没什么改变,所以放弃这里..
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-3-22 10:36:09 | 显示全部楼层
    更期待精彩的动画教程出笼,让我这种菜鸟学习起来更容易些!
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-3-26 15:20:10 | 显示全部楼层
    这个要好好学习下。。。。。
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2018-7-21 10:19
  • 签到天数: 14 天

    [LV.3]偶尔看看II

    发表于 2008-3-29 21:23:44 | 显示全部楼层
    原帖由 chinaren 于 2008-3-21 13:33 发表
    。。。。有个MzLotto.dat不知道是不是关键..我尝试输入几十位数的注册码长度后,发现这个文件大小也没什么改变,所以放弃这里


    网络验证时,请求了一个文件:
    http://www.ledysys.com/SoftReg/MZSSQ/Vail1.txt
    如果修改跳转提示网络验证成功并重启验证时,发现好像没有写注册表和其他文件啊,唯一写的就是这个文件MzLotto.dat啊,这个还真值得怀疑!
    要不然就是因为虽然提示了验证成功,但由于跳转时机不正确导致实际上并没有记录注册信息。也就导致重启验证无从跟起。
    PYG19周年生日快乐!
  • TA的每日心情

    2020-3-23 13:32
  • 签到天数: 28 天

    [LV.4]偶尔看看III

    发表于 2008-5-23 21:32:31 | 显示全部楼层
    都是牛人的天堂。。我菜。。学习着学习。。
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-5-24 16:55:22 | 显示全部楼层
    真的是不错,我也要学习一下。最近就是为了语音输入法时就是VB写的,到现在还没有破解
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-5-25 01:58:29 | 显示全部楼层
    搞不来。没办法了
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表