Текущий архив: 2004.01.13;
Скачать: CL | DM;
ВнизСкопировать файл. Найти похожие ветки
← →
Eshko (2003-11-10 18:39) [0]Ух не знаю как начать .
Уважаемые мастера, подскажите как скопировать файл с одного компа, з помощью TServerSocket и TClientSocket, на второй ??? /// И главное чтобы в ProgressBar можно бы было видеть
"процесс" .
← →
Tik (2003-11-11 18:57) [1]Прием ---------------------
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, IdTCPConnection, IdTCPClient, IdBaseComponent,
IdComponent, IdTCPServer, ExtCtrls, ComCtrls;
type
TForm1 = class(TForm)
IdTCPClient1: TIdTCPClient;
Button2: TButton;
Edit1: TEdit;
Button3: TButton;
Timer1: TTimer;
ProgressBar1: TProgressBar;
procedure Button2Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
ftmpStream : TFileStream;
Cl:boolean;
{ Private declarations }
public
{ Public declarations }
end;
TFThread=class(TThread)
protected
procedure Execute; override;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TFThread.Execute;
var PO:int64;
begin
with Form1.IdTCPClient1 do
begin
Form1.fTmpStream := TFileStream.Create("e:\123.avi",fmCreate);
try
WriteLn("SRN");
PO:=StrToInt(ReadLn);
ReadStream(Form1.fTmpStream,PO);
finally
Form1.CL:=false;
FreeAndNil(Form1.fTmpStream);
Disconnect;
end;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
with IdTCPClient1 do
begin
Connect;
if Connected then
begin TFThread.Create(false);
Timer1.Enabled:=true;
end;
end;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
if ProgressBar1.Max=1 then ProgressBar1.Max:=fTmpStream.Size;
if Cl=true then
ProgressBar1.Position:=fTmpStream.Position
else Timer1.Enabled:=false;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
CL:=true;
end;
end.
Передача -------------
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, IdBaseComponent, IdComponent, IdTCPServer, StdCtrls;
type
TForm1 = class(TForm)
IdTCPServer1: TIdTCPServer;
Edit1: TEdit;
procedure IdTCPServer1Execute(AThread: TIdPeerThread);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);
var
fStream : TFileStream;
begin
if AThread.Connection.ReadLn = "SRN" then
begin
fStream :=TFileStream.Create("E:\78-31.avi",fmOpenRead);
try
AThread.Connection.WriteLn(IntToStr(fStream.Size));
fStream.Position:=0;
AThread.Connection.WriteStream(fStream);
finally
fStream.Free;
end; end;end;
end.
Страницы: 1 вся ветка
Текущий архив: 2004.01.13;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.008 c