Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.31;
Скачать: CL | DM;

Вниз

Поиск файла   Найти похожие ветки 

 
Mirror   (2004-09-23 19:10) [0]

Кто-нибудь помогите пожалуйсто написать алгоритм поиска файлов по всем дискам!


 
kaZaNoVa ©   (2004-09-23 19:12) [1]

Mirror   (23.09.04 19:10)
для начала просто по папке искать а потом перебирать все диски ..
- тебе на апи ?
или можно с SysUtils ?
- и по СД тоже надо искать ?


 
Fay ©   (2004-09-23 19:12) [2]

Как по одному, только по всем.


 
Fay ©   (2004-09-23 19:13) [3]

2  [1] kaZaNoVa ©   (23.09.04 19:12)
> или можно с SysUtils ?

Интересно, что это даст 8)


 
kaZaNoVa ©   (2004-09-23 19:15) [4]

Fay ©   (23.09.04 19:13) [3]
уменьшение размера, без сусутилс - можно прогу накатать от 10 кб с полными файловыми функциями ...
- если размер не критичен, рекомендую модуль SysUtils юзать :))


 
Mirror   (2004-09-23 19:16) [5]

А как получить список всех директорий?


 
Mirror   (2004-09-23 19:17) [6]

Собственно говоря и дисков тоже?


 
Fay ©   (2004-09-23 19:18) [7]

2  [5] Mirror   (23.09.04 19:16)
FindFirstFile/FindNextFile/Windows.FindClose

2 [4] kaZaNoVa ©   (23.09.04 19:15)

> - если размер не критичен, рекомендую модуль SysUtils юзать
> :))

А. И что это даст?


 
Mirror   (2004-09-23 19:30) [8]

> FindFirstFile/FindNextFile/Windows.FindClose

Да, с помощью них можно искать файлы и директории, но как получить список жестких дисков?


 
Fay ©   (2004-09-23 19:36) [9]

Наизусть не помню. У тебя справка установлена?


 
kaZaNoVa ©   (2004-09-23 19:37) [10]

Fay ©   (23.09.04 19:18) [7]
имхо удобнее %))

Mirror   (23.09.04 19:30) [8]

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)+"1";
if GetDriveType(PChar(Char(Ord("A") + i) + ":\"))=DRIVE_REMOVABLE then
info:=info+Char(Ord("A") + i)+"2";
if GetDriveType(PChar(Char(Ord("A") + i) + ":\"))=DRIVE_CDROM then
info:=info+Char(Ord("A") + i)+"3";
if GetDriveType(PChar(Char(Ord("A") + i) + ":\"))=DRIVE_REMOTE then
info:=info+Char(Ord("A") + i)+"4";
if GetDriveType(PChar(Char(Ord("A") + i) + ":\"))=DRIVE_RAMDISK then
info:=info+Char(Ord("A") + i)+"5";  end;

end;
GetDriveAll:=info;
end;


 
Mirror   (2004-09-23 19:38) [11]

А как найти в справке, если не знаешь что искать?


 
Fay ©   (2004-09-23 19:40) [12]

Я же нашёл - GetLogicalDrives. М.б. не быстрее всех, но всё же... 8)


 
kaZaNoVa ©   (2004-09-23 19:42) [13]

Fay ©   (23.09.04 19:40) [12]
по скорости вроде нормально :)


 
Fay ©   (2004-09-23 19:43) [14]

8)



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

Текущий архив: 2004.10.31;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.046 c
14-1097154874
Vlad Oshin
2004-10-07 17:14
2004.10.31
http://www.photosight.ru/pforum/printthread.php?Cat=&amp;Board=photo_


1-1097805864
oleg krechetov
2004-10-15 06:04
2004.10.31
QReport


3-1096909767
}|{yk
2004-10-04 21:09
2004.10.31
При отправлении Cancel - получается ... Insert


3-1096646480
Slaga
2004-10-01 20:01
2004.10.31
Мне нужно в ДатаСете перейти на определенную порядковую позицию (


4-1096111441
Вопрос
2004-09-25 15:24
2004.10.31
Сервис не может читать параметры из реестра