Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.10.24;
Скачать: [xml.tar.bz2];

Вниз

Скрытый поиск по маске с копированием   Найти похожие ветки 

 
CoolMan ©   (2004-10-09 17:58) [0]

Доброго времени суток, уважаемые мастера!

Вот что интересует:
Есть файл 1.txt. В первой строчке указаны маски для поиска разделенные запятой (ПРИМЕР: *.txt, *.html и т.д). Во второй строке адрес деректории куда будут копироваться все найденые файлы

ВОТ ЧТО НАДО: прога запускаится. Без всяких вопросов начинает поиск по всем локальным дискам (+ А)(но не cd-rom) беря переменные из файла 1.txt, и если находит файл, удовлетворяющий одну из масок, указаных в первой строке файла копирует его в директорию указаную во второй строке. После пороверки всех дисков и копирования файлов выводит сообщение что поиск завершен.

Заранее Вам благодарен!!!

PS: пожалуйста если есть возможность - полный код


 
Семен Сорокин ©   (2004-10-09 18:01) [1]

а если 1.txt содержит *.* ? :))
по сабжу:
парсер строки + FindFirst, FindNext, FindClose + CopyFile


 
CoolMan ©   (2004-10-09 18:04) [2]

2 Семен Сорокин

:) можно и *.*

Я начинающий - так что если можно полный код.
СПАСИБО


 
Defunct ©   (2004-10-09 18:27) [3]

Я начинающий - так что если можно зарплату на год вперед.


 
kaZaNoVa ©   (2004-10-09 18:40) [4]

CoolMan ©   (09.10.04 17:58)
боюсь полный код тут никто не выложит ...
//всё-таки задача хоть и простая, но не тривиальная ;))
- получение списка дисков:

procedure TForm1.Button1Click(Sender: TObject);
function GetDriveAll:string;
Var
ld,i:DWORD;
info:string;
Begin
info:="";
ld := GetLogicalDrives;
for i := 0 to 25 do
begin
if (ld and (1 shl i)) <> 0 then begin
if GetDriveType(PChar(Char(Ord("A") + i) + ":\"))=DRIVE_FIXED then
info:=info+Char(Ord("A") + i);
if GetDriveType(PChar(Char(Ord("A") + i) + ":\"))=DRIVE_REMOVABLE then
info:=info+Char(Ord("A") + i);
//if GetDriveType(PChar(Char(Ord("A") + i) + ":\"))=DRIVE_CDROM then
//info:=info+Char(Ord("A") + i);
if GetDriveType(PChar(Char(Ord("A") + i) + ":\"))=DRIVE_REMOTE then
info:=info+Char(Ord("A") + i);
if GetDriveType(PChar(Char(Ord("A") + i) + ":\"))=DRIVE_RAMDISK then
info:=info+Char(Ord("A") + i);  end;
end;
GetDriveAll:=info;
end;
begin
form1.caption:=GetDriveAll;
end;


а дальше рекурсия поиска с копированием .. )


 
CoolMan ©   (2004-10-09 18:43) [5]

2 kaZaNoVa

И опять мой респект!
Спасибо за терпимость и помощь!


 
Defunct ©   (2004-10-09 18:48) [6]

[4]

на вкладке Win3.1 есть компонент TDriveComboBox, который делает тоже самое без лишних телодвижений ;>


 
kaZaNoVa ©   (2004-10-09 18:55) [7]

CoolMan ©   (09.10.04 18:43) [5]
все мы когда-то были новичками ;)))


 
begin...end ©   (2004-10-09 19:00) [8]

function GetDrives: String;
var
 Ch: Char;
begin
 for Ch := "A" to "Z" do
   if GetDriveType(PChar(Ch + ":\")) in [DRIVE_FIXED, DRIVE_REMOVABLE] then
     Result := Result + Ch;
end;



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.10.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.033 c
14-1096609614
European
2004-10-01 09:46
2004.10.24
BreakPoints


14-1096894068
_Alex_
2004-10-04 16:47
2004.10.24
Вакансия Delphi-программиста.


1-1097494617
Dinnik
2004-10-11 15:36
2004.10.24
Количество знаков после запятой


14-1096742414
Antonnn
2004-10-02 22:40
2004.10.24
Хочу узнать ваше мнение: http://june-x.narod.ru


11-1078397629
Dimon
2004-03-04 13:53
2004.10.24
Как осуществить перенос текста в RichEdit (KOL)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский