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

Вниз

Ошибка   Найти похожие ветки 

 
Sergey_Suhoy   (2002-11-26 17:40) [0]

Очень интересно... Вроде все правильно, но такая конструкция не работает (при выполнении нижеследующего кода возникает ошибка external exception). Прямо гвоздь в ботинке :-). Подскажите, кто знает, в чем я неправ?

//=========CUT============
procedure TForm1.YesBitBtnClick(Sender: TObject);
function FindTXTfiles: TStrings;
var TXTfile: TSearchRec;
TXTFileList: TStrings;
begin
TXTFileList := TStringList.Create;
if FindFirst("C:\*.txt", faAnyFile, TXTfile) = 0 then
begin
TXTFileList.Add("C:\" + TXTfile.Name);
while FindNext(TXTfile) = 0 do TXTFileList.Add("C:\" + TXTfile.Name);
end;
FindClose(TXTfile); Result := TXTFileList; TXTFileList.Free;
end;
begin
DebugMemo.Lines.Add("Обнаружены следующие TXT-файлы...");
DebugMemo.Lines.AddStrings(FindTXTfiles);
end;
//=========CUT============


 
Smithson ©   (2002-11-26 17:50) [1]

А на какой конкретно строке возникает ошибка?
И что значит Result := TXTFileList;, у тебя же процедура? Код, похоже, не полный?


 
mike-d ©   (2002-11-26 17:50) [2]

Что-то ты тут со Strings намудрил...
Result := TXTFileList; // Result := указателю на объект
TXTFileList.Free; // тут ты его тихо прибил

DebugMemo.Lines.AddStrings(FindTXTfiles); // что теперь вставлять будем?


 
MBo ©   (2002-11-26 17:52) [3]

procedure FindTXTfiles(TXTFileList:TStrings);
...

FindTXTfiles(DebugMemo.Lines);



 
mrcat ©   (2002-11-26 17:57) [4]

дык оно и не должно работать!!!
смотри:

procedure FindTXTfiles(const str: TStrings);
var
TXTfile: TSearchRec;
TXTFileList: TStrings;

begin
TXTFileList := TStringList.Create;
if FindFirst("C:\*.txt", faAnyFile, TXTfile) = 0 then begin
TXTFileList.Add("C:\" + TXTfile.Name);
while FindNext(TXTfile) = 0 do TXTFileList.Add("C:\" + TXTfile.Name);
end;
FindClose(TXTfile);
Str.AddStrings(TXTFileList); TXTFileList.Free;
end;

begin
DebugMemo.Lines .Add("Обнаружены следующие TXT-файлы...");
FindTXTfiles(DebugMemo.Lines);
end;


 
MBo ©   (2002-11-26 18:05) [5]

>mrcat
Ну ты наворотил...

procedure FindTXTfiles(TXTFileList:TStrings);
var TXTfile: TSearchRec;
begin
if FindFirst("C:\*.txt", faAnyFile, TXTfile) = 0 then
begin
TXTFileList.Add("C:\" + TXTfile.Name);
while FindNext(TXTfile) = 0 do TXTFileList.Add("C:\" + TXTfile.Name);
FindClose(TXTfile);
end;
end;


 
mrcat ©   (2002-11-26 18:07) [6]

>>MBo
неважно, оптимизацией пусть сам занимается =)


 
tv ©   (2002-11-26 18:18) [7]

По моему тут дело все в TXTFileList: TStrings.
Попробуй

function FindTXTfiles: TStringList;
var TXTfile: TSearchRec;
TXTFileList: TStringList;

ну и так далее...


 
mrcat ©   (2002-11-26 18:21) [8]

>>2tv
>>По моему тут дело все в TXTFileList: TStrings.

истина в ... процедуре



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

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

Наверх




Память: 0.48 MB
Время: 0.019 c
1-14628
Kurt
2002-11-23 18:28
2002.12.05
Не подскажите как сделать чтоб в GroupBox-e фонт Caption-а сделат


3-14420
LSW
2002-11-16 23:24
2002.12.05
Помгите разобраться с SQL в Paradox таблице


7-14842
max2057
2002-10-05 09:21
2002.12.05
С чего начинается Родина или Как выключаются Windows


3-14424
dastbin
2002-11-18 09:48
2002.12.05
отображение информации в grid


3-14384
Tundra
2002-11-19 16:07
2002.12.05
Можно ли определить высоту строки в DBGrid.