亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? archiveeditunit.pas

?? 游戲克星江湖行游戲修改工具全部源碼,功能很強的。
?? PAS
?? 第 1 頁 / 共 4 頁
字號:
   NowProcess:=0;
   AttachedNum:=0;
//////////////////////////////////////
OldScanType:=ScanType;
OldVarType:=VarType;
if ArchiveEditForm.checkAndgetFilesize(FilepathName)=0 then exit;
totalProcess:=ArchiveEditForm.checkAndgetFilesize(FilepathName);


tempFileMemStream:=TmemoryStream.Create;
try
  begin
 tempFileMemStream.LoadFromFile(FilePathName);
 tempFileMemStream.Seek(0,sofrombeginning);
/////////Lets Real Start !真正開始!!!!!!!!!!!!!!!!!!!!!!!!!!!!!//////////

////////////////////////////////////////////////////////////

if ScanType=Number_Scan then
begin
    Time1:=GetTickCount;
    TempLength:=tempFileMemStream.Size;
    
    if vartype=Byte_value then  //byte
    begin
    TempSize:=TempLength;
      for i:=0 to TempSize-1 do
      begin
       tempFileMemStream.Seek(i,sofrombeginning); 
       tempFileMemStream.ReadBuffer(readByte,1);
        if readByte=ByteValue then
              begin
              inc(AttachedNum);
              tempAddress:=i;
              AddressmemStream.WriteBuffer(tempAddress,Sizeof(tempAddress));
              end;
        inc(NowProcess);
      end;
    end;   //byte end
 
    if vartype=Word_value then //word
    begin
    TempSize:=TempLength;
      for i:=0 to TempSize-2 do
      begin
       tempFileMemStream.Seek(i,sofrombeginning); 
       tempFileMemStream.ReadBuffer(readWord,2);
        if readWord=WordValue then
              begin
              inc(AttachedNum);
              tempAddress:=i;
              AddressmemStream.WriteBuffer(tempAddress,Sizeof(tempAddress));
              end;
        inc(NowProcess);
      end;
    end;  //word end

   if vartype=Dword_value then //dword
   begin
    TempSize:=TempLength;
      for i:=0 to TempSize-4 do
      begin
       tempFileMemStream.Seek(i,sofrombeginning);
       tempFileMemStream.ReadBuffer(readDWord,4);
        if readDWord=DWordValue then
              begin
              inc(AttachedNum);
              tempAddress:=i;
              AddressmemStream.WriteBuffer(tempAddress,Sizeof(tempAddress));
              end;
        inc(NowProcess);
      end;
    end;  //dowrd end

   if vartype=Int64_value then //int64
   begin
    TempSize:=TempLength;
      for i:=0 to TempSize-8 do
      begin
       tempFileMemStream.Seek(i,sofrombeginning);
       tempFileMemStream.ReadBuffer(readInt64,8);
        if readInt64=Int64Value then
              begin
              inc(AttachedNum);
              tempAddress:=i;
              AddressmemStream.WriteBuffer(tempAddress,Sizeof(tempAddress));
              end;
        inc(NowProcess);
      end;
    end;   //int64 end

   if vartype=Single_value then //Single
   begin
      PHelpSingleDword:=@singlevalue;
      HelpSingleDword1:=(PHelpSingleDword^ shr 23);
      TempSize:=TempLength;
      for i:=0 to TempSize-4 do
      begin
       tempFileMemStream.Seek(i,sofrombeginning);
       tempFileMemStream.ReadBuffer(HelpsingleDword2,4);
         ///single的1位符號位與8位指數(shù)為相同
        HelpsingleDWord2:=HelpsingleDWord2 shr 23;
        if helpsingleDWord2=helpsingleDWord1 then
              begin
              inc(AttachedNum);
              tempAddress:=i;
              AddressmemStream.WriteBuffer(tempAddress,Sizeof(tempAddress));
              end;
        inc(NowProcess);
      end;
    end;  ///single end

   if vartype=Double_value then //Double
   begin
      PHelpDoubleint64:=@Doublevalue;
      HelpDoubleint641:=(PHelpDoubleInt64^ shr 52);
      TempLength:=tempFileMemStream.Size;
      TempSize:=TempLength;
      for i:=0 to TempSize-8 do
      begin
        tempFileMemStream.Seek(i,sofrombeginning);
        tempFileMemStream.ReadBuffer(HelpDoubleInt642,8);
           ///double的1位符號位與11位指數(shù)為相同
          HelpDoubleInt642:=HelpDoubleint642 shr 52;
          if helpDoubleInt642=helpDoubleInt641 then
                 begin
                 inc(AttachedNum);
                 tempAddress:=i;
                 AddressmemStream.WriteBuffer(tempAddress,Sizeof(tempAddress));
                 end;
        inc(NowProcess);
      end;
    end;//double end

  NowProcess:=totalProcess;
  time2:=getTickCount;
  CanUpdateFileTask:=messageBox(Application.handle,
                 pchar(Format(String_FileTaskResult,[name,AttachedNum,(Time2-Time1)/1000])),                 //pchar('任務(wù):'+name+#13#10+'總共找到'+intToStr(AttachedNum)+'個結(jié)果 耗時'+FloattoStr((Time2-Time1)/1000)+'秒'),
                 pchar(String_FileTaskResultTitle),
                 MB_OK);

end; //Number_Scan end

//text String scan
if scantype=string_scan then
  begin
    time1:=getTickCount;
    helpStringLength:=length(scanvalue);
    TempLength:=tempFileMemStream.Size;
    TempSize:=TempLength;
    CharToFind:=1;
    for i:=0 to TempLength-1 do
    begin
    tempFileMemStream.Seek(i,sofrombeginning);
    tempFileMemStream.ReadBuffer(ReadcharByte,1);
    if chr(readcharByte)=scanvalue[CharToFind] then
       begin
         inc(charToFind);
            if CharToFind>=Dword(helpStringLength)+1 then //found the string
            begin
            inc(AttachedNum);
            tempAddress:=i-helpStringLength+1;
            AddressmemStream.WriteBuffer(tempAddress,Sizeof(tempAddress));
            CharToFind:=1;
            end;
       end else CharToFind:=1;
       inc(NowProcess);
    end;
    NowProcess:=totalProcess;
    time2:=getTickCount;
    CanUpdateFileTask:=messageBox(Application.handle,
                 pchar(Format(String_FileTaskResult,[name,AttachedNum,(Time2-Time1)/1000])),                 //pchar('任務(wù):'+name+#13#10+'總共找到'+intToStr(AttachedNum)+'個結(jié)果 耗時'+FloattoStr((Time2-Time1)/1000)+'秒'),
                 pchar(String_FileTaskResultTitle),
                 MB_OK);
end; //text String scan

///低階掃描初始化////////////
//if (scantype<>Number_scan) and (scantype<>String_scan) then
if (VarType=LowLevel_Value) then
begin
  tempFileMemStream.SaveToFile(SaveFileName);
  NowProcess:=totalProcess;
  CanUpdateFileTask:=messageBox(Application.handle,
                 pchar(format(String_FileInitialLowLevel,[name])),
                 pchar(String_FileTaskResultTitle),
                 MB_OK);
end;

InSearchProcess:=False;

   end;  ///try end;
  finally
  FreeAndNil(tempFileMemStream);
  end;
end;//with scan end;

end;
//////////////////////////////////////////////////////////////////////////////////////////


constructor TFileNextScanThread.Create(theIndex:integer);
begin
TheTaskIndex:=theIndex;
inherited Create(False);
end;


///////////////////第二次三次..的掃描///////////////////////////////////////////////////////////////
Procedure TFileNextScanThread.Execute;
var TempLength: DWORD;
    TempSize:DWORD;

    ReadByte: Byte;
    ReadWord: Word;
    ReadDWord: Dword;
    ReadInt64: Int64;
  //  ReadSingle: Single;
   // Readdouble: double;
    ReadCharByte:Byte;
    
    PhelpSingleDword:^Dword;
    helpsingleDWord1:DWord;  //存放原數(shù)的符號位與指數(shù)位
    HelpSingleDword2:Dword;

    PhelpDoubleint64:^int64;
    helpDoubleint641:int64;  //存放原數(shù)的符號位與指數(shù)位
    HelpDoubleint642:int64;
    
   // ReadMemory_ArrayStringByte:Array[0..$FF] of Byte;
    HelpStringLength:Byte;
    chartoFind:integer;

    Time1:Dword;
    Time2:Dword;

    i: integer;
    j: integer;
   // k: integer;


    ByteValue: Byte;
    WordValue: Word;
    DWordValue: Dword;
    Int64Value: Int64;
    SingleValue: Single;
    doubleValue: double;

    FileReadByte:Byte;
    FileReadByteNew:Byte;
    TempAddress:Dword;
    AddressMemStreamNew:TmemoryStream;   //////新地址
    tempFileMemStream:TmemoryStream;      ///打開文件
    tempFileMemStreamNew:TmemoryStream;   ///保存的低階文件
begin
FreeOnTerminate:=True;
with theFileTask[theTaskIndex] do
begin
/////////////////////////////////////////////////
/////////////再次并得到最終數(shù)據(jù)/////////////////////////////////////////
if (scanType=Number_Scan)then
begin
    if Vartype=Byte_value then
    begin
      val(scanvalue,bytevalue,i);
      if i>0 then raise Exception.Create(Format(String_InvalidByte,[scanvalue]));
    end;
    if vartype=word_value then
    begin
      val(scanvalue,wordvalue,i);
      if i>0 then raise Exception.Create(Format(String_InvalidWord,[scanvalue]));
    end;
    if vartype=dword_value then
    begin
      val(scanvalue,dwordvalue,i);
      if i>0 then raise Exception.Create(Format(String_InvalidDword,[scanvalue]));
    end;
    if vartype=Int64_value then
    begin
      val(scanvalue,Int64value,i);
      if i>0 then raise Exception.Create(Format(String_InvalidInt64,[scanvalue]));
    end;
   if vartype=single_value then
    begin
      val(scanvalue,singlevalue,i);
      if i>0 then raise Exception.Create(Format(String_InvalidSingle,[scanvalue]));
    end;
    if vartype=double_value then
    begin
      val(scanvalue,doublevalue,i);
      if i>0 then raise Exception.create(Format(String_InvalidDouble,[scanvalue]));
    end;
    if vartype=String_value then
    begin
    if Length(scanvalue)>255 then raise Exception.create(Format(String_InvalidString,[scanvalue]));
    end;

end;//if end
////////////////////////////////////////////////////////////////////////////
  InSearchProcess:=True;
  NowProcess:=0;
  AttachedNum:=0;
  INC(SearchTimes);
   OldScanType:=ScanType;
  AddressMemStream.Seek(0,soFromBeginning);
  OldScanType:=ScanType;
  OldVarType:=VarType;
/////////NextScan真正開始!!!!!!!!!!!!!!!!!!!!!!!!!!!!!//////////

tempFileMemStream:=TmemoryStream.Create;
 tempFileMemStream.LoadFromFile(FilePathName);
 AddressMemStreamNew:=TmemoryStream.Create;
////////////////////////////////////////////////////////////
if (scanType=number_Scan) then
begin
    Time1:=GetTickCount;
    TempLength:=AddressMemStream.Size;
    TempSize:=TempLength shr 2;
    
  if vartype=Byte_value then  //Byte
    begin
      for i:=0 to TempSize-1 do
      begin
       AddressMemStream.ReadBuffer(TempAddress,Sizeof(TempAddress));
       tempFileMemStream.Seek(TempAddress,sofrombeginning);
       TRY
       tempFileMemStream.ReadBuffer(readByte,1);
       EXCEPT
       continue;
       END;
        if readByte=ByteValue then
              begin
              inc(AttachedNum);
              AddressMemStreamNew.WriteBuffer(tempAddress,Sizeof(tempAddress));
              end;
        inc(NowProcess);
      end;
    end; //byte end
 
  if vartype=Word_value then  //Word
    begin
      for i:=0 to TempSize-1 do
      begin
       AddressMemStream.ReadBuffer(TempAddress,Sizeof(TempAddress));
       tempFileMemStream.Seek(TempAddress,sofrombeginning);
       Try
       tempFileMemStream.ReadBuffer(readWord,2);
       except
       continue;
       end;
        if readWord=WordValue then
              begin
              inc(AttachedNum);
              AddressMemStreamNew.WriteBuffer(tempAddress,Sizeof(tempAddress));
              end;
        inc(NowProcess);
      end;
    end;  //word end

    
  if vartype=DWord_value then  //DWord
    begin
      for i:=0 to TempSize-1 do
      begin
       AddressMemStream.ReadBuffer(TempAddress,Sizeof(TempAddress));
       tempFileMemStream.Seek(TempAddress,sofrombeginning);
       try
       tempFileMemStream.ReadBuffer(readDWord,4);
       except
       continue;
       end;
        if readDWord=DWordValue then
              begin
              inc(AttachedNum);
              AddressMemStreamNew.WriteBuffer(tempAddress,Sizeof(tempAddress));
              end;
        inc(NowProcess);
      end;
    end;

  if vartype=int64_value then  //int64
    begin
      for i:=0 to TempSize-1 do
      begin
       AddressMemStream.ReadBuffer(TempAddress,Sizeof(TempAddress));
       tempFileMemStream.Seek(TempAddress,sofrombeginning);
       try
       tempFileMemStream.ReadBuffer(readInt64,8);
       except
       continue;
       end;
        if readInt64=Int64Value then
              begin
              inc(AttachedNum);
              AddressMemStreamNew.WriteBuffer(tempAddress,Sizeof(tempAddress));
              end;
        inc(NowProcess);
      end;
    end;

   if vartype=Single_value then //Single
   begin
      PHelpSingleDword:=@singlevalue;
      HelpSingleDword1:=(PHelpSingleDword^ shr 23);
      for i:=0 to TempSize-1 do
      begin
       AddressMemStream.ReadBuffer(TempAddress,Sizeof(TempAddress));
       tempFileMemStream.Seek(TempAddress,sofrombeginning);
       try
       tempFileMemStream.ReadBuffer(HelpSingleDword2,4);
       except
       continue;
       end;
        ///single的1位符號位與8位指數(shù)為相同
        HelpsingleDWord2:=HelpsingleDWord2 shr 23;
        if HelpSingleDword2=HelpSingleDword1 then
              begin
              inc(AttachedNum);
              AddressMemStreamNew.WriteBuffer(tempAddress,Sizeof(tempAddress));
              end;
        inc(NowProcess);
      end;
    end;

   if vartype=Double_value then //Double
   begin
      PHelpDoubleInt64:=@Doublevalue;
      HelpDoubleint641:=(PHelpDoubleInt64^ shr 52);
      for i:=0 to TempSize-1 do
      begin
       AddressMemStream.ReadBuffer(TempAddress,Sizeof(TempAddress));
       tempFileMemStream.Seek(TempAddress,sofrombeginning);
       try
       tempFileMemStream.ReadBuffer(HelpDoubleint642,8);
       except
       continue;
       end;

       ///Double的1位符號位與11位指數(shù)為相同
        HelpDoubleint642:=HelpDoubleint642 shr 52;
        if HelpDoubleint642=HelpDoubleint641 then
              begin
              inc(AttachedNum);
              AddressMemStreamNew.WriteBuffer(tempAddress,Sizeof(tempAddress));
              end;
        inc(NowProcess);
      end;
    end;
    AddressMemStream.Clear;
    AddressMemStream.CopyFrom(AddressMemStreamNew,0);
    NowProcess:=totalProcess;
    time2:=getTickCount;
    CanUpdateFileTask:=messageBox(Application.handle,
                 pchar(Format(String_FileTaskResult,[name,AttachedNum,(Time2-Time1)/1000])),
                 pchar(String_FileTaskResultTitle),
                 MB_OK);
end; //Number_Scan end

//text String scan
if scantype=string_scan then
  begin
  time1:=getTickCount;
  TempLength:=AddressMemStream.Size;
  TempSize:=TempLength shr 2;
  helpStringLength:=length(scanvalue);
  CharToFind:=1;
  for i:=0 to TempSize-1 do
    begin
     AddressMemStream.ReadBuffer(TempAddress,sizeof(TempAddress));
     tempFileMemStream.Seek(TempAddress,sofrombeginning);
       for j:=1 to helpStringLength do
       begin
         try
         tempFileMemStream.ReadBuffer(ReadcharByte,1);
         except
         continue;
         end;
         if chr(readcharByte)=scanvalue[CharToFind] then
         begin
         inc(charToFind);
            if CharToFind>=Dword(helpStringLength)+1 then //found the string
            begin
            inc(AttachedNum);
            AddressmemStreamNew.WriteBuffer(tempAddress,Sizeof(tempAddress));
            CharToFind:=1;
            break;
            end;
         end else
         begin
         CharToFind:=1;
         break;
         end;
       end;
     inc(NowProcess);
    end;
    
    AddressMemStream.Clear;
    AddressMemStream.CopyFrom(AddressMemStreamNew,0);
    NowProcess:=totalProcess;
    time2:=getTickCount;
    CanUpdateFileTask:=messageBox(Application.handle,

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色欧美88888久久久久久影院| 亚洲国产精品久久人人爱蜜臀 | 日韩精品一级中文字幕精品视频免费观看 | 一二三四社区欧美黄| 99免费精品在线观看| 一区二区三区.www| 91精品国产综合久久久久久久| 日本成人在线网站| 国产网站一区二区| a4yy欧美一区二区三区| 一区二区三区在线高清| 7777精品伊人久久久大香线蕉 | 欧美精品一区二区三区蜜桃| 国产成人福利片| 亚洲色图色小说| 欧美精品乱码久久久久久按摩 | 丁香六月综合激情| 樱桃视频在线观看一区| 91精品免费观看| 国产91丝袜在线播放九色| 亚洲欧美日韩人成在线播放| 欧美色中文字幕| 加勒比av一区二区| 亚洲视频电影在线| 日韩精品一区二区三区视频 | 久久不见久久见免费视频1| 国产精品传媒视频| 亚洲欧美综合另类在线卡通| 欧美性大战久久久久久久蜜臀| 日本欧美肥老太交大片| 国产精品久久久久影视| 欧美一区午夜视频在线观看| 国产·精品毛片| 日本一不卡视频| 日韩一区中文字幕| 精品久久久影院| 欧美在线观看一二区| 夫妻av一区二区| 免费成人结看片| 亚洲欧洲精品天堂一级| 精品久久久久久久久久久院品网| 色妞www精品视频| 国精产品一区一区三区mba桃花 | 久久综合狠狠综合久久综合88 | 亚洲精品视频免费看| 精品福利在线导航| 欧美探花视频资源| 国产成人99久久亚洲综合精品| 午夜不卡av免费| 亚洲最色的网站| 中文字幕不卡在线观看| 日韩欧美国产三级| 欧美精品777| 欧美在线一二三| 97se亚洲国产综合自在线观| 国产精品99久| 麻豆精品视频在线观看免费| 午夜视频一区二区| 亚洲乱码国产乱码精品精98午夜 | 中文字幕一区二区三区色视频| 欧美一区中文字幕| 欧美男生操女生| 欧美日韩中字一区| 欧美视频日韩视频在线观看| 色爱区综合激月婷婷| 91美女片黄在线| 91天堂素人约啪| 91在线丨porny丨国产| 岛国av在线一区| 成人免费视频caoporn| 国产乱码精品一区二区三区五月婷| 日韩黄色片在线观看| 亚洲v中文字幕| 日韩精品乱码av一区二区| 亚洲成人激情社区| 亚洲成人一区二区在线观看| 亚洲午夜一二三区视频| 亚洲国产va精品久久久不卡综合| 亚洲一区av在线| 日精品一区二区三区| 日韩成人午夜精品| 久久爱www久久做| 国产在线一区二区综合免费视频| 国产一区二区三区四区五区入口 | 成人av影视在线观看| 99免费精品在线观看| 日本精品免费观看高清观看| 欧美色综合网站| 91精品国产欧美一区二区 | 久久午夜国产精品| 国产清纯白嫩初高生在线观看91| 国产精品毛片大码女人| 亚洲欧美日韩久久| 午夜久久久久久电影| 美女视频黄a大片欧美| 久久成人综合网| 久久99精品国产麻豆婷婷| 成人免费视频免费观看| 欧洲精品视频在线观看| 日韩一区二区三| 久久精品亚洲乱码伦伦中文| 亚洲视频你懂的| 轻轻草成人在线| 国产 欧美在线| 色婷婷一区二区三区四区| 欧美日韩大陆一区二区| 精品播放一区二区| 亚洲欧美日韩一区二区三区在线观看| 亚洲国产欧美在线| 国产一区二区不卡老阿姨| 97久久精品人人做人人爽| 91精品国产高清一区二区三区蜜臀| 2021久久国产精品不只是精品| 日韩一区欧美小说| 麻豆成人久久精品二区三区小说| 国产aⅴ综合色| 91精品在线观看入口| 国产精品嫩草99a| 日韩中文字幕区一区有砖一区| 粉嫩一区二区三区在线看| 欧美视频一区二区三区四区| 国产视频一区二区在线观看| 婷婷开心激情综合| 成人黄色免费短视频| 欧美高清www午色夜在线视频| 国产精品人人做人人爽人人添| 亚洲大片在线观看| 国产白丝精品91爽爽久久| 3d成人动漫网站| 亚洲美女免费视频| 国产不卡视频一区二区三区| 日韩欧美123| 亚洲一区二区三区中文字幕在线| 丁香激情综合国产| 精品久久久三级丝袜| 视频一区二区三区在线| 91污在线观看| 国产精品色呦呦| 国产在线不卡一卡二卡三卡四卡| 欧美美女网站色| 夜夜嗨av一区二区三区网页| 成人一区二区三区视频在线观看| 日韩一级片网址| 亚洲愉拍自拍另类高清精品| 成人激情小说乱人伦| 日韩欧美另类在线| 日韩综合小视频| 欧美乱熟臀69xxxxxx| 亚洲精品五月天| 91农村精品一区二区在线| 亚洲国产精品av| 国产91综合网| 国产片一区二区三区| 国产精品综合二区| 久久久久久久久久久久电影| 看片网站欧美日韩| 日韩欧美美女一区二区三区| 美女性感视频久久| 日韩欧美一级二级三级久久久| 日本vs亚洲vs韩国一区三区二区 | 91福利在线导航| 亚洲视频在线观看三级| 不卡的av中国片| 中文字幕中文字幕一区二区| 成人综合在线视频| 国产欧美视频一区二区| 丰满白嫩尤物一区二区| 中文字幕乱码亚洲精品一区| 成人性生交大片免费看在线播放 | 视频一区视频二区在线观看| 在线播放亚洲一区| 免费观看成人av| 精品国产免费视频| 高清不卡在线观看| **欧美大码日韩| 欧美亚洲国产一区二区三区va| 亚洲国产综合视频在线观看| 在线成人小视频| 久久爱www久久做| 国产欧美日韩精品一区| 97精品电影院| 亚洲大片免费看| 欧美精品一区二区三区蜜桃| 成人综合婷婷国产精品久久免费| 中文字幕av不卡| 欧美视频中文一区二区三区在线观看| 日韩精品每日更新| 久久精品一区二区三区四区| aaa亚洲精品| 亚洲国产中文字幕| 日韩欧美中文字幕公布| 国产suv精品一区二区三区| 亚洲蜜臀av乱码久久精品蜜桃| 欧美乱熟臀69xxxxxx| 国产九色sp调教91| 一区二区三区欧美日韩| 日韩欧美国产午夜精品| 成人国产亚洲欧美成人综合网| 亚洲国产裸拍裸体视频在线观看乱了 | 亚洲综合色噜噜狠狠|