Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.08.2012, 19:34   #1
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,897
Вопрос Поиск файла по всему диску

Нашёл в сети способ, но не могу в выделенную строку подставлять данные из TEdit
Код:
uses Imagehlp
...
procedure TForm1.Button1Click(Sender: TObject);
var
  FilePath: PAnsiChar;
begin
  Button1.Enabled := False;
  GetMem(FilePath, MAX_PATH);
  if SearchTreeForFile('D:\', 'test.txt', FilePath) then ShowMessage ('Найден файл: ' + FilePath);
  FreeMem(FilePath);
  Button1.Enabled := True;
end;
Код:
if SearchTreeForFile(PAnsiChar(Edit1.Text), PAnsiChar(Edit2.Text), FilePath) then ShowMessage ('Найден файл: ' + FilePath);
Ноль реакции
Shouldercannon вне форума Ответить с цитированием
Старый 29.08.2012, 20:07   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Возможно в эдитах пробелы слева-справа, поэтому и не находит. А вообще при первом обращении к диску с большим к-вом папок и файлов серьезно парится
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 29.08.2012, 20:11   #3
Yurk@
Участник клуба
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Сообщений: 1,100
По умолчанию

с твоим кодом нормально находит
Изображения
Тип файла: jpg find_test.jpg (15.5 Кб, 45 просмотров)
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...
Yurk@ вне форума Ответить с цитированием
Старый 29.08.2012, 20:13   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну а какова спецификация функции?
И что в Эдитах содержится?
И как функция работает?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 30.08.2012, 04:53   #5
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,897
По умолчанию

Цитата:
Сообщение от Yurk@ Посмотреть сообщение
с твоим кодом нормально находит
Пробелов в TEdit's нет. Очередная заморочка Delphi 2010. В Delphi 7 через PChar и PAnsiChar работает нормально, а в Delphi 2010 только PAnsiChar и то не работает.
Даже такой изврат не прокатывает
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  Path, sFile, FilePath: PAnsiChar;
begin
  Button1.Enabled := False;

  Path := PAnsiChar(Edit1.Text);
  sFile := PAnsiChar(Edit2.Text);

  GetMem(FilePath, MAX_PATH);
  if SearchTreeForFile(Path, sFile, FilePath) then ShowMessage ('Найден файл: ' + FilePath);
  FreeMem(FilePath);

  Button1.Enabled := True;
end;
Как теперь решить эту проблему?

Цитата:
Сообщение от Stilet Посмотреть сообщение
Ну а какова спецификация функции?
И что в Эдитах содержится?
И как функция работает?
# http://winapi.freetechsecrets.com/wi...reeForFile.htm
# В первом Edit путь, во втором имя файла
# http://winapi.freetechsecrets.com/wi...reeForFile.htm

Последний раз редактировалось Shouldercannon; 30.08.2012 в 06:22.
Shouldercannon вне форума Ответить с цитированием
Старый 01.09.2012, 19:18   #6
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,897
По умолчанию

Решение проблемы
Код:
if SearchTreeForFile(PAnsiChar(AnsiString(Edit1.Text)), PAnsiChar(AnsiString(Edit2.Text)), FilePath) then
Shouldercannon вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Мониторинг malware по всему земному шару Ёжик в тумане Свободное общение 1 07.07.2012 23:32
Рассылка сообщения всему кл в TICQClient hacker_007 Работа с сетью в Delphi 0 20.09.2011 19:31
Макрос поиска по всему документу Polotenchik Microsoft Office Word 20 11.06.2011 12:00
[Макрос] поиск по всему документу с набором действий Polotenchik Microsoft Office Word 4 03.04.2010 07:50
Поиск файла по всему компьютеру!!!!! Flippp Общие вопросы C/C++ 17 05.08.2009 11:57