?? unit2.pas
字號:
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Buttons, StdCtrls, ComCtrls,winsock, Menus, ImgList,StrUtils,
ExtCtrls,ScktComp,clipbrd;
type
TForm2 = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
PopupMenu2: TPopupMenu;
N9: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
PopupMenu1: TPopupMenu;
N3: TMenuItem;
N2: TMenuItem;
N6: TMenuItem;
N1: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
OpenDialog1: TOpenDialog;
ListView2: TListView;
ListView1: TListView;
ListBox2: TListBox;
ListBox1: TListBox;
Label2: TLabel;
Label1: TLabel;
ImageList1: TImageList;
Edit3: TEdit;
Edit2: TEdit;
Edit1: TEdit;
ComboBox1: TComboBox;
StatusBar1: TStatusBar;
StatusBar2: TStatusBar;
ListView3: TListView;
StatusBar3: TStatusBar;
Label3: TLabel;
ComboBox2: TComboBox;
Edit4: TEdit;
SpeedButton1: TSpeedButton;
PopupMenu3: TPopupMenu;
N10: TMenuItem;
N11: TMenuItem;
N12: TMenuItem;
N13: TMenuItem;
N14: TMenuItem;
N15: TMenuItem;
N16: TMenuItem;
N17: TMenuItem;
N18: TMenuItem;
N19: TMenuItem;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
SpeedButton5: TSpeedButton;
Edit6: TEdit;
Edit5: TEdit;
RAR1: TMenuItem;
N20: TMenuItem;
N21: TMenuItem;
TabSheet3: TTabSheet;
Edit7: TEdit;
CheckBox1: TCheckBox;
Label4: TLabel;
Label5: TLabel;
Edit8: TEdit;
ListView4: TListView;
StatusBar4: TStatusBar;
PopupMenu4: TPopupMenu;
N23: TMenuItem;
N24: TMenuItem;
ListBox3: TListBox;
N25: TMenuItem;
SpeedButton6: TSpeedButton;
SpeedButton7: TSpeedButton;
N22: TMenuItem;
procedure ComboBox1Change(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure ListView1DblClick(Sender: TObject);
procedure N6Click(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure N7Click(Sender: TObject);
procedure N9Click(Sender: TObject);
procedure N8Click(Sender: TObject);
procedure ComboBox2Change(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure N10Click(Sender: TObject);
procedure N12Click(Sender: TObject);
procedure PageControl1Change(Sender: TObject);
procedure N11Click(Sender: TObject);
procedure N15Click(Sender: TObject);
procedure N14Click(Sender: TObject);
procedure N16Click(Sender: TObject);
procedure N17Click(Sender: TObject);
procedure N18Click(Sender: TObject);
procedure N19Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure N21Click(Sender: TObject);
procedure N20Click(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure N23Click(Sender: TObject);
procedure N24Click(Sender: TObject);
procedure SpeedButton6Click(Sender: TObject);
procedure SpeedButton7Click(Sender: TObject);
procedure N22Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
uses untMain;
{$R *.dfm}
function lastpos(C: Char;S: string): Integer;
var
I: Integer;
begin
Result := 0;
for I := Length(S) downto 1 do
if S[I] = C then
begin
Result := I;
Break;
end;
end;
procedure TForm2.ComboBox1Change(Sender: TObject);
var
f:string;
sock:integer;
begin
sock:=strtoint(statusbar2.Panels[0].text);
edit1.text:=combobox1.text+'\';
PageControl1.Enabled :=false;
form2.ListView1.Clear;
form2.ListView2.Clear;
form2.ListBox1.clear;
form2.ListBox2.clear;
f:='17'+edit1.text;
send(sock,f[1],length(f),0);
statusbar1.Panels[0].text:='正在接收遠程文件信息...' ;
end;
procedure TForm2.N2Click(Sender: TObject);
var
f:string;
sock:integer;
begin
If (listview2.ItemIndex = -1) Then Exit;
sock:=strtoint(statusbar2.Panels[0].text);
f:='18'+edit1.text+listview2.ItemFocused.caption;
send(sock,f[1],length(f),0);
statusbar1.Panels[0].text:='正在查看文件的大小...' ;
end;
procedure TForm2.N5Click(Sender: TObject); //上傳
var
f:string;
sock:integer;
a:integer;
b:integer;
begin
if opendialog1.execute then
begin
a:=fileopen(opendialog1.FileName,fmopenread);
if a<=0 then exit;
b:=getfilesize(a,nil);
if b>5242880 then
begin
closehandle(a);
MessageBox(0,'不能上傳大于5M的文件.','提示',MB_ICONHAND );
form2.StatusBar1.Panels[0].Text:='不能上傳大于5M的文件.';
exit;
end;
sock:=strtoint(statusbar2.Panels[0].text);
edit2.text:=opendialog1.FileName;
edit3.text:=inttostr(b);
f:='23'+edit1.text+extractfilename(opendialog1.FileName)+'|'+inttostr(b);
send(sock,f[1],length(f),0);
closehandle(a);
statusbar1.Panels[0].text:='正在上傳文件...' ;
end;
end;
procedure TForm2.ListView1DblClick(Sender: TObject);
var
f:string;
sock:integer;
a:integer;
begin
if listview1.ItemIndex =-1 then exit;
if (listview1.ItemFocused.caption<>'.') and
(listview1.ItemFocused.caption<>'..') then
begin
sock:=strtoint(statusbar2.Panels[0].text);
edit1.text:=edit1.text+listview1.ItemFocused.caption+'\';
PageControl1.Enabled :=false;
form2.ListView1.Clear;
form2.ListView2.Clear;
form2.ListBox1.clear;
form2.ListBox2.clear;
f:='17'+edit1.text;
send(sock,f[1],length(f),0);
statusbar1.Panels[0].text:='正在接收遠程文件信息...' ;
exit;
end;
if listview1.ItemFocused.caption='..' then
begin
sock:=strtoint(statusbar2.Panels[0].text);
a:=lastpos('\',copy(edit1.text,1,length(edit1.text)-1));
edit1.text:=copy(edit1.text,1,a);
PageControl1.Enabled :=false;
form2.ListView1.Clear;
form2.ListView2.Clear;
form2.ListBox1.clear;
form2.ListBox2.clear;
f:='17'+edit1.text;
send(sock,f[1],length(f),0);
statusbar1.Panels[0].text:='正在接收遠程文件信息...' ;
exit;
end;
if listview1.ItemFocused.caption='.' then
begin
sock:=strtoint(statusbar2.Panels[0].text);
edit1.text:=copy(edit1.text,1,3);
PageControl1.Enabled :=false;
form2.ListView1.Clear;
form2.ListView2.Clear;
form2.ListBox1.clear;
form2.ListBox2.clear;
f:='17'+edit1.text;
send(sock,f[1],length(f),0);
statusbar1.Panels[0].text:='正在接收遠程文件信息...' ;
end;
end;
procedure TForm2.N6Click(Sender: TObject); //下載
var
f:string;
a,sock:integer;
begin
If (listview2.ItemIndex = -1) Then Exit;
edit6.Text:=extractfilepath(paramstr(0))+listview2.ItemFocused.Caption;
a:=CreateFile(pchar(form2.Edit6.Text),GENERIC_WRITE,FILE_SHARE_WRITE,
nil,OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0);
if a=-1 then
begin
statusbar1.Panels[0].text:='文件寫入失敗.';
exit;
end;
closehandle(a);
edit5.Text :='1';
sock:=strtoint(statusbar2.Panels[0].text);
f:='28'+edit1.text+listview2.ItemFocused.caption;
edit2.text:=edit1.Text+listview2.ItemFocused.Caption;
deletefile(pchar(edit6.text));
send(sock,f[1],length(f),0);
statusbar1.Panels[0].text:='正在下載文件...' ;
end;
procedure TForm2.N3Click(Sender: TObject);
var
f:string;
sock:integer;
begin
sock:=strtoint(statusbar2.Panels[0].text);
PageControl1.Enabled :=false;
form2.ListView1.Clear;
form2.ListView2.Clear;
form2.ListBox1.clear;
form2.ListBox2.clear;
f:='17'+edit1.text;
send(sock,f[1],length(f),0);
statusbar1.Panels[0].text:='正在刷新遠程文件信息...' ;
end;
procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
frmmain.edit2.text:='6';
end;
procedure TForm2.N7Click(Sender: TObject);
var
sock:integer;
url,temp:string;
begin
url:=Inputbox('新建','輸入文件夾名稱: ','');
if url='' then exit;
sock:=strtoint(statusbar2.Panels[0].text);
temp:='47'+edit1.text+url;
send(sock,temp[1],length(temp),0);
statusbar1.Panels[0].text:='正在新建指定的文件夾...' ;
end;
procedure TForm2.N9Click(Sender: TObject);
var
f:string;
sock:integer;
begin
sock:=strtoint(statusbar2.Panels[0].text);
PageControl1.Enabled :=false;
form2.ListView1.Clear;
form2.ListView2.Clear;
form2.ListBox1.clear;
form2.ListBox2.clear;
f:='17'+edit1.text;
send(sock,f[1],length(f),0);
statusbar1.Panels[0].text:='正在刷新遠程文件信息...' ;
end;
procedure TForm2.N8Click(Sender: TObject);
var
sock:integer;
temp:string;
begin
sock:=strtoint(statusbar2.Panels[0].text);
temp:='49'+edit1.text+listview1.ItemFocused.Caption;
send(sock,temp[1],length(temp),0);
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -