Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
13.10.2003, 08:58
|
|||
|---|---|---|---|
|
|||
Проблема с перехватом EOleExeption |
|||
|
#18+
Доброго времени суток. Проблема следующая. Есть форма с ADOQuery в каторой выполняется запрос типа select(ничего сложного в общем в нем нет.) Есть удаленный сервак MS-SQL 2000 все работает замечательно до какой нить проблемы с сетью. Код проги выглядит следующим образом. procedure TForm1.Timer1Timer(Sender: TObject); begin AssignFile(LogFile, 'SMSLogFile.txt'); Timer1.Enabled := False; try ADOQuery1.Open; ...... тут код вывода данных на форму ..... except on E: EOleException do begin Append(LogFile); Writeln(LogFile, DateTimeToStr(Now) + ' ' + E.Message); CloseFile(LogFile); ADOQuery1.Close; end; else begin Append(LogFile); Writeln(LogFile, DateTimeToStr(Now) + ' Странная ошибка'); CloseFile(LogFile); ADOQuery1.Close; end; Timer1.Enabled := True; if ADOQuery1.Active = True then ADOQuery1.Close; end; И когда появиляется ошибка то программа пишет эту ошибку в Лог-файл до тех пор пока не закрыть программу и открыть заново. А хотелось чтоб этого не требовалось. Посоветуйте кто сталкивался с подобной проблемой как ее победить. Таймер стоит на 5 секунд. Пишу на Dephi 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.10.2003, 14:26
|
|||
|---|---|---|---|
|
|||
Проблема с перехватом EOleExeption |
|||
|
#18+
Не ужели никто ничем помочь не может?:( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.10.2003, 14:40
|
|||
|---|---|---|---|
Проблема с перехватом EOleExeption |
|||
|
#18+
А что если так //глобальная переменная Var WasExcept:Boolean; procedure TForm1.Timer1Timer(Sender: TObject); begin AssignFile(LogFile, 'SMSLogFile.txt'); Timer1.Enabled := False; try ADOQuery1.Open; ...... тут код вывода данных на форму ..... WasExcept:=false; except on E: EOleException do begin if not WasExcept then ... WasExcept:=true; end; Timer1.Enabled := True; if ADOQuery1.Active = True then ADOQuery1.Close; end; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.10.2003, 08:56
|
|||
|---|---|---|---|
|
|||
Проблема с перехватом EOleExeption |
|||
|
#18+
И так пробовал. не помогает. Все равно ошибка выскакиевает. При чем Была ошибка именно на открытии ADOQuery и пошагово когда выполняешь после ошибки повторно выскакивает именно на открытии ADOQuery. Такое ощущение что она ошибку в себе держит и как только идет обращение к ADOQuery не пытаясь коннектится к серваку сразу же ошибку выбрасыват. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.10.2003, 09:13
|
|||
|---|---|---|---|
Проблема с перехватом EOleExeption |
|||
|
#18+
Может прабл строке подключения... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.10.2003, 09:40
|
|||
|---|---|---|---|
|
|||
Проблема с перехватом EOleExeption |
|||
|
#18+
Строку подключения тоже смотрел до и после ошибки.. одинаковая, правильная. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.10.2003, 09:49
|
|||
|---|---|---|---|
Проблема с перехватом EOleExeption |
|||
|
#18+
А если при ошибке сделать реконнект??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=58&mobile=1&tid=2116326]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
73ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
| others: | 246ms |
| total: | 413ms |

| 0 / 0 |
