• delphi win7 and high path


    Close Delphi
    Locate bordbk120N.dll (C:Program Files (x86)CodeGearRAD Studio6.0in)
    Make a backup copy
    Check step 3
    Open bordbk120N.dll in a Hex editor (UltraEdit works fine)
    Search for “01 00 48 74 47 80 3D”
    Make sure this is found once only
    Replace “74” with “EB”
    Save
    Restart Delphi. Error should be gone.

    5A 8B 38 FF 57 1C 8B F8 C6 43 25 00 8B 45 14 50 8B 45 10 50 8B 45 0C 50 8B 45 08 50 6A 00 6A 00 8B 4D FC 8B D6 8B C3 E8 23 13 00 00 88 45 FB 80 7D FB 00 75 6B 8D 45 E4 50 8D 4D E0

                                                                                       8B 45 10 50 8B 45 0C 50 8B 45 08 50 6A 00 6A 00 8B 4D FC 8B D6 8B C3 E8 23 13 00 00

                                                                                       90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 B0 01

    -------------------------
    0x00006860: B0
    0x00006861: 00
    0x00006862: C3
    0x0000689C: B0
    0x0000689D: 00
    0x0000689E: C3
    0x000068D8: B0
    0x000068D9: 00
    0x000068DA: C3
    0x00006A80: B0
    0x00006A81: 00
    0x00006A82: C3
    0x00006B1C: B0
    0x00006B1D: 00
    0x00006B1E: C3-------------------------

    00006860: B0 <- 55
    00006861: 00 <- 8B
    00006862: C3 <- EC
    0000689C: B0 <- 55
    0000689D: 00 <- 8B
    0000689E: C3 <- EC
    000068D8: B0 <- 55
    000068D9: 00 <- 8B
    000068DA: C3 <- EC
    00006A80: B0 <- 55
    00006A81: 00 <- 8B
    00006A82: C3 <- EC
    00006B1C: B0 <- BA
    00006B1D: 00 <- 2C
    00006B1E: C3 <- 77

    procedure TForm1.Button3Click(Sender: TObject);
    const
      addr0: array[0..4] of LongWord =($6860, $689C, $68D8, $6A80, $6B1C);
      value: array[0..2] of Byte = ($B0, 0, $C3);
    var
      I, v: Integer;
      S: TStream;
    begin
      S := TFileStream.Create(
          'C:Program FilesCodeGearRAD Studio5.0inds.exe', fmOpenReadWrite);
      try
        v := $B000C3;
        for I := 0 to 4 do
        begin
          S.Seek(addr0[I], 0);
          S.Write(value, 3);
        end;
      finally
        S.Free;
      end;
    end;

    00006860:   B0   <-   55 
    00006861:   00   <-   8B 
    00006862:   C3   <-   EC 
    0000689C:   B0   <-   55 
    0000689D:   00   <-   8B 
    0000689E:   C3   <-   EC 
    000068D8:   B0   <-   55 
    000068D9:   00   <-   8B 
    000068DA:   C3   <-   EC 
    00006A80:   B0   <-   55 
    00006A81:   00   <-   8B 
    00006A82:   C3   <-   EC 
    00006B1C:   B0   <-   BA 
    00006B1D:   00   <-   2C 
    00006B1E:   C3   <-   77

    00006860: B0  <- 55 
    00006861: 00  <- 8B 
    00006862: C3  <- EC 

    0000689C: B0  <- 55 
    0000689D: 00  <- 8B 
    0000689E: C3  <- EC 

    000068D8: B0  <- 55 
    000068D9: 00  <- 8B 
    000068DA: C3  <- EC 

    00006A80: B0  <- 55 
    00006A81: 00  <- 8B 
    00006A82: C3  <- EC 

    00006B1C: B0  <- BA 
    00006B1D: 00  <- 2C 
    00006B1E: C3  <- 77

  • 相关阅读:
    MyBatis学习教程
    【转载】Spring MVC 整合 Freemarker
    Java高效编程之四【C语言结构的替代】
    String相关的问题
    接口与抽象类的区别
    Java Garbage Collection基础详解------Java 垃圾回收机制技术详解
    数据库事物、隔离等级及数据库锁机制
    hadoop 多表join:Map side join及Reduce side join范例
    Java IO设计模式彻底分析 (转载)
    傅里叶变换的智慧[转]
  • 原文地址:https://www.cnblogs.com/marklove/p/10886257.html
Copyright © 2020-2023  润新知