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

Вниз

Открыть папку ! помогите.   Найти похожие ветки 

 
Porecla   (2005-02-13 12:36) [0]

У меня такой код не работает !
А вообще мне надо открыть папку и в ListBox добавить всё содержимое.Подскажите пожалуйста !

procedure TForm1.Button1Click(Sender: TObject);
var
Path: string;
begin
Path := GetPath("Выберите папку");
if Path <> ""
then Edit1.Text := Path;

end;


 
Kerk ©   (2005-02-13 12:38) [1]

Слов нет :))))

FindFirst / FindNext


 
Porecla   (2005-02-13 12:49) [2]

Ну и, что смешного помогите кодом ламеру :)))


 
Kerk ©   (2005-02-13 12:55) [3]

Я тебе уже ответил: FindFirst / FindNext
Нужны конкретные примеры - делай поиск во форуму.. их куча.


 
_student   (2005-02-13 13:00) [4]

Скачай здесь http://www.podgoretsky.com/ компонент DirScan он тебе облегчит жизнь


 
Porecla   (2005-02-13 13:15) [5]

Вот, что нашел, работает

Теперь следующая проблема.
Мне надо считать файлы из папок Автозагрузка у всех пользователей. Если они известны то можно ввести путь а если нет?.

procedure TForm1.Button4Click(Sender: TObject);
var
SRec: TSearchRec;
begin
if FindFirst("C:\Program Files\Opera\*.exe",faAnyFile,SRec) <> 0 then
Exit;
repeat
ListBox2.Items.Add("C:\Program Files\Opera\"+SRec.Name);
until FindNext(SRec) <> 0;
FindClose(SRec);
end;


 
Porecla   (2005-02-13 13:15) [6]

Вот, что нашел, работает

Теперь следующая проблема.
Мне надо считать файлы из папок Автозагрузка у всех пользователей. Если они известны то можно ввести путь а если нет?.

procedure TForm1.Button4Click(Sender: TObject);
var
SRec: TSearchRec;
begin
if FindFirst("C:\Program Files\Opera\*.exe",faAnyFile,SRec) <> 0 then
Exit;
repeat
ListBox2.Items.Add("C:\Program Files\Opera\"+SRec.Name);
until FindNext(SRec) <> 0;
FindClose(SRec);
end;


 
Ivolg ©   (2005-02-13 13:16) [7]

Лови!!!

var
  searhrec:tsearchrec;
  path:string;
begin
   if findfirst(path+"*.*",faanyfile, searhrec)=0 then
   listbox1.Items.Add(searhrec.Name);
   while (findnext( searhrec)=0) do
   listbox1.Items.add( searhrec.name);


 
Kerk ©   (2005-02-13 13:23) [8]

Ivolg ©   (13.02.05 13:16) [7]

Я все же как-то пришел к такому варианту -

if (FindFirst(path+"*.*",faanyfile, searhrec) = 0) then
repeat
listbox1.Items.Add(searhrec.Name);
until (FindNext(searchrec) <> 0);


 
Porecla   (2005-02-13 13:32) [9]

Всё отлично всем спасибо но как же сделать так, что бы
на чужом компьютере нажал кнопочку а ListBox содержание
папок Автозагрузка. Для всех я так понимаю
путь
C:\Documents and Settings\All Users\Start Menu\Programs\Startup

А вот для текущего. Надо, что его определить и вставить как то.


 
begin...end ©   (2005-02-13 13:32) [10]

> Ivolg ©   (13.02.05 13:16) [7]

1. Нет FindClose.
2. В список попадут "." и "..".


 
begin...end ©   (2005-02-13 13:37) [11]

> Porecla   (13.02.05 13:32) [9]

Для определения местонахождения папки "Автозагрузка" используйте API-функции SHGetSpecialFolderLocation и SHGetPathFromIDList.


 
Porecla   (2005-02-13 13:45) [12]

А можно пожалуйста пример кода//


 
begin...end ©   (2005-02-13 13:48) [13]

> Porecla   (13.02.05 13:45) [12]

function GetStartupFolder: String;
var
 PIDL: pItemIDList;
 Path: PChar;
begin
 if SHGetSpecialFolderLocation(0, CSIDL_STARTUP, PIDL) = NOERROR then
 begin
   GetMem(Path, MAX_PATH + 1);
   try
     if SHGetPathFromIDList(PIDL, Path) then
       Result := Path
   finally
     FreeMem(Path)
   end
 end
end


 
begin...end ©   (2005-02-13 13:49) [14]

> begin...end ©   (13.02.05 13:48) [13]

uses ShlObj


 
Porecla   (2005-02-13 13:58) [15]

Ок ! а как теперь использовать к примеру здесь
куда вставить?

procedure TForm1.Button4Click(Sender: TObject);
var
SRec: TSearchRec;
begin
if FindFirst("C:\Program Files\Opera\*.exe",faAnyFile,SRec) <> 0 then
Exit;
repeat
ListBox2.Items.Add("C:\Program Files\Opera\"+SRec.Name);
until FindNext(SRec) <> 0;
FindClose(SRec);
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.033 c
14-1107525215
Hypercube
2005-02-04 16:53
2005.02.27
KOffice и Quanta Plus


14-1106910087
Aleksandr
2005-01-28 14:01
2005.02.27
Проблема с принтером в сети....


1-1108131846
Senti
2005-02-11 17:24
2005.02.27
Как получать и отправлять сообщение потоком


1-1108135492
Doxygen
2005-02-11 18:24
2005.02.27
Версия Delphi


1-1108275949
Вовик
2005-02-13 09:25
2005.02.27
Какие dll использует моя прога. Как их запускать из моей папки?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский