![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Просто помогите....:) [D7, XP]
Goast © (2006-01-17 15:30:00)Здравствуйте мастера!!!! У меня программа должна ОДНОВРЕМЕННО копировать на несколько компьютеров один и тот же файл. Адреса компьютеров у меня находятся в StringGrid. В принципе я уже это реализовал:
type
tmythread1=class(tthread)
private
{ Private declarations }
protected
procedure execute; override;
end;
var
t1:tmythread1;
procedure tmythread2.execute;
begin
CopyFileEx(pchar(otkyda),pchar(kyda),@Progress,nil,nil,0);
end;
Нажимаем на кнопочку!!!!!
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
t1:=tmythread1.Create(false);
t1.Priority:=tplowest;
end;
все работает файлы ОДНОВРЕМЕННО копируются на все компы по списку .ИИИИИИИ наконец вопрос!!!!…:) Как мне сделать так что бы напротив компьютера(в stringGrid) писалось бы сколько процентов скопировано???????????? Спасибо всем!!!!
Goast (2006-01-17 15:46:00) [1]
> DimonS © (17.01.06 15:42) [1]
> Можно попробовать копирование через API. Проценты не показывает,
> но показывает приблизительное время до конца. Как в винде
> :)
это я так понимаю он будет показывать виндовское окно да?если да то это не подходит у меня 30 компов это че 30 окон будет....??!!...:)
DimonS (2006-01-17 15:42:00) [2]Можно попробовать копирование через API. Проценты не показывает, но показывает приблизительное время до конца. Как в винде :)
uses ShellApi;
procedure TForm1.Button1Click(Sender: TObject);
var
OpStruc: TSHFileOpStruct;
frombuf, tobuf: Array [0..128] of Char;
Begin
FillChar( frombuf, Sizeof(frombuf), 0 );
FillChar( tobuf, Sizeof(tobuf), 0 );
StrPCopy( frombuf, 'h:\hook\*.*' );
StrPCopy( tobuf, 'd:\temp\brief' );
With OpStruc DO Begin
Wnd:= Handle;
wFunc:= FO_COPY;
pFrom:= @frombuf;
pTo:=@tobuf;
fFlags:= FOF_NOCONFIRMATION or FOF_RENAMEONCOLLISION;
fAnyOperationsAborted:= False;
hNameMappings:= Nil;
lpszProgressTitle:= Nil;
end;
ShFileOperation( OpStruc );
end;
Функцию проверял, работает нормально.