飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 3258|回复: 6

请教KeyGen制作的几个问题~

[复制链接]
  • TA的每日心情
    开心
    2018-5-6 16:27
  • 签到天数: 7 天

    [LV.3]偶尔看看II

    发表于 2006-7-14 09:12:57 | 显示全部楼层 |阅读模式
    一、易语言里的“取文本左边”“取文本右边”“取文本中间”在VB,Delphi里如何表达?

    二、易语言里的“取大写”“取小写”在VB,Delphi里又如果表达?

    三、最后小鱼兄的这段易语言翻转字符串应该如何理解,在VB,Delphi里是怎么表达的:
    .版本 2

    .程序集 窗口程序集1

    .子程序 _按钮1_被单击
    .局部变量 机器码, 文本型
    .局部变量 i, 整数型
    .局部变量 S, 整数型
    .局部变量 S1, 整数型
    .局部变量 W, 整数型
    .局部变量 S2, 整数型
    .局部变量 S3, 整数型
    .局部变量 S4, 整数型
    .局部变量 S5, 整数型
    .局部变量 ALL1, 文本型
    .局部变量 ALL, 文本型

    机器码 = 编辑框1.内容
    W = 取文本长度 (机器码)
    .计次循环首 (W, i)
        S = 到数值 (取文本左边 (机器码, 1)) + 30
        机器码 = 取文本右边 (机器码, 取文本长度 (机器码) - 1)
        S1 = S  ' + 2
        S1 = 到数值 (转换为十进制 (到文本 (S1), 16)) + 2
        S2 = W + 16
        S3 = S1 × S2
        S4 = S3 + S1
        S5 = S4 + W
        ALL1 = 倒转字符串 (到文本 (S5))
        ALL = ALL + ALL1
    .计次循环尾 ()
    编辑框2.内容 = 取文本左边 (ALL, 4) + “-” + 取文本中间 (ALL, 6, 4) + “-” + 取文本中间 (ALL, 11, 4)


    .子程序 倒转字符串, 文本型
    .参数 ls_2_1, 文本型
    .局部变量 i, 整数型
    .局部变量 RChar, 文本型
    .局部变量 LChar, 文本型
    .局部变量 WChar, 文本型

    .判断循环首 (i < 取文本长度 (ls_2_1))
        LChar = 取文本左边 (ls_2_1, 取文本长度 (ls_2_1) - i)
        RChar = 取文本右边 (LChar, 1)
        i = i + 1
        WChar = WChar + RChar
    .判断循环尾 ()
    返回 (WChar)

    [ 本帖最后由 野猫III 于 2006-7-14 20:52 编辑 ]

    Syncronize Backup V1.35 KeyGen.rar

    3.61 KB, 下载次数: 5, 下载积分: 飘云币 -2 枚

    PYG19周年生日快乐!

    该用户从未签到

    发表于 2006-7-14 10:47:10 | 显示全部楼层
    LeftStr
    RightStr
    或Copy
    都可解决...
    PYG19周年生日快乐!
  • TA的每日心情
    难过
    2024-4-22 14:49
  • 签到天数: 11 天

    [LV.3]偶尔看看II

    发表于 2006-7-14 11:11:00 | 显示全部楼层
    VB:
    1.     Dim Code As String  '机器码
    2.     Dim LenCode As Integer '机器码位数
    3.     Dim i As Integer
    4.     Dim S, S1, S2, S3, S4, S5 As Integer
    5.     Dim TEMP, Sn As String
    6.     Const a = "-"
    7.    
    8.     Code = Text1.Text
    9.     LenCode = Len(Code)
    10.    
    11.     For i = 1 To LenCode
    12.         S = Val(Left(Code, 1)) + &H30   '实际就是取ascii ==>> S = Asc(Left(Code, 1))
    13.         Code = Right(Code, Len(Code) - 1)
    14.         S1 = S + 2
    15.         S2 = LenCode + 16
    16.         S3 = S1 * S2
    17.         S4 = S3 + S1
    18.         S5 = S4 + LenCode
    19.         TEMP = TEMP + StrReverse(S5) '倒置文本
    20.     Next
    21.         Sn = Left(TEMP, 4) + a + Mid(TEMP, 6, 4) + a + Mid(TEMP, 11, 4)
    22.         Text2.Text = Sn
    复制代码

    Delphi:
    1. procedure TForm1.Button1Click(Sender: TObject);
    2. //注意:先在 Uses 子句加入 :StrUtils
    3. var
    4.   Code:string;   //机器码
    5.   LenCode:integer; //机器码长度
    6.   i:integer;
    7.   S,S1,S2,S3,S4,S5:integer;
    8.   temp,Sn:string;
    9. const
    10.   a = '-';
    11. begin
    12.   code:= edit1.Text;
    13.   LenCode := length(code);

    14.   for i := 1 to LenCode do
    15.   begin
    16.     s := ord(code[1]) ;  //这里比VB好处理的多哦~~~
    17.     code := rightstr(code,length(code)-1);
    18.     s1 := s+2;
    19.     S2 := LenCode + 16;
    20.     S3 := S1 * S2;
    21.     S4 := S3 + S1;
    22.     S5 := S4 + LenCode;
    23.     temp:=temp + ReverseString(inttostr(S5));
    24.   end;
    25.     sn := Leftstr(TEMP, 4) + a + Midstr(TEMP, 6, 4) + a + Midstr(TEMP, 11, 4);
    26.     edit2.Text :=sn;
    27. end;
    复制代码
    PYG19周年生日快乐!
  • TA的每日心情
    慵懒
    2015-12-17 23:46
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2006-7-14 15:55:41 | 显示全部楼层

    老大出手不同凡想啊!!

    支持老大!
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2018-5-6 16:27
  • 签到天数: 7 天

    [LV.3]偶尔看看II

     楼主| 发表于 2006-7-14 20:41:11 | 显示全部楼层
    原帖由 飘云 于 2006-7-14 11:11 发表
    VB:
        Dim Code As String  '机器码
        Dim LenCode As Integer '机器码位数
        Dim i As Integer
        Dim S, S1, S2, S3, S4, S5 As Integer
        Dim TEMP, Sn As String
        Const a = "-" ...


    除了咱对老大感谢之外!

    咱还为PYG 5.4 Crack引导学习小组的所有朋友向老大表示感谢!

    第三课需要各位中上水平的朋友支持,谢谢!

    欢迎所有[PYG]成员组的朋友到第三课当指导。(请在[PYG]成员QQ群PM咱)

    _________________________________

    刚消化了一个内容:
    Private Sub Command1_Click()
    Dim Name As String
    Name = Text1.Text
    Text2.Text = Left(Name, 2)  //取文本左边两位,中间就是Mid,右边就是Right
    End Sub

    [ 本帖最后由 野猫III 于 2006-7-14 21:03 编辑 ]
    PYG19周年生日快乐!
  • TA的每日心情
    无聊
    2016-1-18 13:29
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2008-1-7 19:50:05 | 显示全部楼层
    易语言的中文太拗口了。
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-1-8 13:57:21 | 显示全部楼层
    没学过楼主问的语言...只会VC. ASM, .NET
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

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