Показать сообщение отдельно
  #1  
Старый 21.12.2007, 16:08
nav nav вне форума
Прохожий
 
Регистрация: 27.11.2007
Сообщения: 30
Репутация: 10
По умолчанию аварийный выход

продолжаю самостоятельно осваивать Delphi. Написал программу, ошибок не выдаёт, но аварийно завершается. Наверное, что-то не понимаю в вариантах. помогите, кому не трудно.
Дан файл, надо цифры записать в memo1 , а буквы в memo2.
Код:
 procedure TForm1.Button1Click(Sender: TObject);
var fi1:file;
    buf1:variant;
    chislo:chis;
    k1:integer;
begin with od1 do
  if execute
  then e1.Text:=extractFiledir(od1.FileName)+filename;
 assignFile(fi1,od1.FileName); {$I-} reset(fi1,1); {$I+}
 k1:=0;
 repeat BlockRead(fi1, Buf1,sizeOf(buf1),k1);
   if VarIsEmpty(buf1)=false
   then if VarType(buf1) in chislo
        then red1.lines.Add(buf1)
        else if buf1<>' '
             then red2.lines.Add(vartostr(buf1));
  until (k1<>0) or (k1<>10);

end;
Ответить с цитированием