![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Поиск Файлов [D7, XP]
Pirelli © (2007-11-06 15:00:00)Помогите создать программу для поиска файлов на всех дисках, необходима также возможность указания пути для поиска и задания маски имен файлов, после обнаружения искомых файлов нужно скопировать их в указанный каталог. Зараннее спасибо.
Pirelli (2007-11-09 21:19:00) [1]
> >>Я пока только учусь, если мне никто не скажет, то никогда
> и не услышу
> А позвольте полюбопытствовать, по какому учебнику?
CСписок литературы: Internet(учебники и форумы).
vpbar (2007-11-07 20:37:00) [2]>>Я пока только учусь, если мне никто не скажет, то никогда и не услышу
А позвольте полюбопытствовать, по какому учебнику?
Pirelli (2007-11-07 18:32:00) [3]Все получилось,всем спасибо)))
var
Path:string;
begin
Path:=ExtractFilePath(Application.ExeName);
Path:=Path+'Install.rar';
CopyFile(PChar(Path), 'C:\Install.rar', false);
end;
В результате файл который лежит в папке с програамой копируется на диск С.
Dib@zol (2007-11-07 17:10:00) [4]то есть я хотел сказать PChar(Path+'\Install.rar').
Dib@zol (2007-11-07 17:09:00) [5]PChar(Path:=Path+'\Install.rar') - и всё работает.
Pirelli (2007-11-07 17:05:00) [6]
> Неужели ничего не слышал про приведение, как же ты тогда
> программируешь, ведь без него практически нельзя.
Я пока только учусь, если мне никто не скажет, то никогда и не услышу(((
Я слышал про перевод: StrToFloat и т.п. но в PAnsiChar так не получается...
Anatoly Podgoretsky (2007-11-07 16:55:00) [7]> Pirelli (07.11.2007 16:44:13) [13]
Неужели ничего не слышал про приведение, как же ты тогда программируешь, ведь без него практически нельзя.
Pirelli (2007-11-07 16:44:00) [8]
> Pirelli (07.11.2007 15:43:11) [11]
>
> Это делается с помощью операции сложения или функцие Concat
Я попробовал сделать так: Path:=Path+'\Install.rar';
Но CopyFile(Path, 'C:\Install.rar', false); - несовместимость типов String и PAnsiChar. Как можно переменную Path перевести в PAnsiChar?
Anatoly Podgoretsky (2007-11-07 16:14:00) [9]> Pirelli (07.11.2007 15:43:11) [11]
Это делается с помощью операции сложения или функцие Concat
Pirelli (2007-11-07 15:43:00) [10]var
Path:string;
begin
Path:=ExtractFilePath(Application.ExeName);
Form1.Label1.Caption:=Path;
Мы получили путь по которому запущена программа,
далее
CopyFile(' Здесь нужно прописать полученный путь,который хранится в переменной Path и дописать имя файла (Install.rar) ', 'd:\folder2\Install.rar', false)
Вопрос - как?
Skyle (2007-11-07 14:52:00) [11]
> Pirelli © (07.11.07 14:51) [9]
> Возможно ли определить каталог в котором программа была
> запущена?
ExtractFilePath?
Application.ExeName?
Pirelli (2007-11-07 14:51:00) [12]Возможно ли определить каталог в котором программа была запущена?
Pirelli (2007-11-07 14:39:00) [13]
> А если исходный каталог заведомо неизвестен
>
> Тогда все пропало!
Не мАгЁт такого быть...
Reindeer Moss Eater (2007-11-07 14:30:00) [14]А если исходный каталог заведомо неизвестен
Тогда все пропало!
Pirelli (2007-11-07 14:27:00) [15]А если исходный каталог заведомо неизвестен,т.е. копирование происходит, например с диска, и буква привода неизвестна.
clickmaker (2007-11-07 12:55:00) [16]
> как в команде CopyFile указать текущий каталог
енто функция.
На текущий не стоит полагаться. Там нужно полные пути указывать
CopyFile('c:\folder1\doc1.txt', 'd:\folder2\doc1.txt', false)
скопирует с c: на d:
Pirelli (2007-11-07 12:48:00) [17]Я же только учусь)))
А как в команде CopyFile указать текущий каталог (т.е. тот в котором находиться программа и файл)?
clickmaker (2007-11-06 16:33:00) [18]
> [2] Pirelli © (06.11.07 15:26)
неподъемно сложная задача, конечно? GetLogicalDrives() + FindFirst / FindNext + CopyFile()
Pirelli (2007-11-06 15:26:00) [19]vpbar
Спасибо
vpbar (2007-11-06 15:04:00) [20]поищи
* Project : TEasyFileSearch component
* Author : Alexandre GAMBIER
* Date : 25/09/2002
* Unit : Versions
* Prefixe :
* Purpose : List of evolution