powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Копирование файлов
8 сообщений из 8, страница 1 из 1
Копирование файлов
    #32298053
Black Prince
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите как скопировать папку(событие щелчок по кнопке) из каталога на дискету?
...
Рейтинг: 0 / 0
Копирование файлов
    #32298139
StarWind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тебе копирование файлов чтоль?
тогда CopyFile например... только там по мойму все не так просто... самому придется разбираться со вложенностями
...
Рейтинг: 0 / 0
Копирование файлов
    #32298154
Black Prince
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я пишу следующий код, он файл на дискету копирует только когда в поле edit1.text укажешь полный путь, а мне хотелось бы чтобы он копировал по маске т. е. в поле edit1.text C:\xxx\*.* было что то типо этого но когда я ставлю копирование по маске он выдает ошибку что неправильный синтаксис имени файла.


procedure TForm1.Button1Click(Sender: TObject);
var
a:string;
NewFileName: string;
filename:string;
Msg: string;
NewFile: TFileStream;
OldFile: TFileStream;
begin
NewFileName := ExtractFilePath('a:\')+ ExtractFileName(edit1.Text);
Msg := Format('Copy %s to %s?', [edit1.Text, NewFileName]);
if MessageDlg(Msg, mtCustom, mbOKCancel, 0) = mrOK then
begin
OldFile := TFileStream.Create(edit1.Text, fmOpenRead or fmShareDenyWrite);
try
NewFile := TFileStream.Create(NewFileName, fmCreate or fmShareDenyRead);

try
NewFile.CopyFrom(OldFile, OldFile.Size);
finally
FreeAndNil(NewFile);
end;
finally
FreeAndNil(OldFile);
end;
end;

end;
...
Рейтинг: 0 / 0
Копирование файлов
    #32298447
Фотография CrazyMihey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вызови .Bat ник, а ещё лучше WinRar с дополнением информации для восстановления, т.к. флоп - весчь не надёжная...
...
Рейтинг: 0 / 0
Копирование файлов
    #32298695
Cheboor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
для того чтобы копировать по маске (программно, всмысле без батников) тебе надо использовать findfirst (findnext) и во время выполнения цикла копировать каждый файл по отдельности, например используя filecopy (или copyfile - не помню)... в справке по findnext посмотри...
...
Рейтинг: 0 / 0
Копирование файлов
    #32298715
Papka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Немного переделав получиш то что надо

procedure SearchInDir(Mask, Dir: string; Subdir: Boolean; var List: StringList);
var
r: integer;
f: TSearchRec;
begin
if Dir = '' then Exit;
if Dir[Length(Dir)] <> '\' then Dir := Dir + '\';
{$I-}
ChDir(Dir);
{$I+}
if IOResult <> 0 then Exit;
r := FindFirst('*.*', faAnyFile, f);
while r = 0 do
begin
if MatchesMask(f.Name, Mask) then
if (f.Name <> '.') and (f.Name <> '..') then
List.Add(ExpandFileName(f.Name));
if (f.Attr and faDirectory) = faDirectory then
if SubDir = True then
begin
if (f.Name <> '.') and (f.Name <> '..') then
begin
SearchInDir(Mask, ExpandFileName(f.Name), SubDir, List);
ChDir(Dir);
end;
end;
r := FindNext(f);
end;
FindClose(f);
end;
...
Рейтинг: 0 / 0
Копирование файлов
    #32299213
StarWind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Black Prince
я же написал самому придется разбираться со вложенностями ... Тебе уже написали как... И в следующий раз попрошу прежде чем забивать аську кодом функции, спросить как минимум разрешения...
...
Рейтинг: 0 / 0
Копирование файлов
    #32299380
bjohny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть еще такая штука:
SHFileOperation, правда только в NT
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Копирование файлов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]