Kursist
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Frodo_Torbins Спасибо, про "Range checking" забыл. Включил, но не помогло. EurekaLog ловит ошибку на строке inc(self.fdate) - поле объекта типа Integer. Очень смущает, как так, что без EurekaLog прога не запускается (ошибка при создании формы), а с EurekaLog запускается (что такое происходит?), а ошибка (возможно, только первая) при загрузки из файла, но эта процедура работала прежде без сбоев: if FileExists(SPTFileName) then begin try FStream:=TFileStream.Create(SPTFileName,fmOpenRead); FStream.Position:=0; FStream.Read(SPTKey,SizeOf(SPTKey)); if SPTKey<>'S'then begin MessageDlg('NOT STD FILE!',mtError, [mbOK],0); FStream.Free; exit; end; FStream.Read(SPTKey,SizeOf(SPTKey)); if SPTKey<>'P'then begin MessageDlg('NOT STD FILE!',mtError, [mbOK],0); FStream.Free; exit; end; FStream.Read(SPTKey,SizeOf(SPTKey)); if SPTKey<>'T'then begin MessageDlg('NOT STD FILE!',mtError, [mbOK],0); FStream.Free; exit; end; //inc(FSPTCount); {как вариант} inc(self.FLoadedSPT); <-------------------------------------------------падает здесь SetLength(FAnArray,FLoadedSPT); // 3-Dimension array arr[a] SetLength(FAnArray[FLoadedSPT-1],1); //arr[a,b] SetLength(FAnArray[FLoadedSPT-1,0],1); //arr[a,b,c] Предположительно ошибка "плавающая" - вспомнил, что в одной из старых версий программы тоже вдруг перестала запускаться одна из форм, только на тот момент она оказалась "лишней"...вообщем, чувствую, надо будет долго-долго искать... | Всего записей: 137 | Зарегистр. 12-07-2004 | Отправлено: 23:05 13-04-2009 | Исправлено: Kursist, 23:20 13-04-2009 |
|