Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 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.47 MB
Время: 0.021 c
3-37496
Spaniel
2003-12-17 12:39
2004.01.13
Есть ли в дельфях процедура, аналогичная PACK из foxpro?


3-37517
Дима
2003-12-16 19:29
2004.01.13
Как отсортировать таблицу (Paradox) по определённому полю?


3-37530
Pako
2003-12-15 14:00
2004.01.13
SQL


3-37583
bulanovk
2003-12-13 23:08
2004.01.13
Проблема с ADOQUERY и MySQL


1-37698
Tumcoat
2003-12-26 03:53
2004.01.13
Выравнивание столбцов таблицы в Word-е