Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2007.05.20;
Скачать: [xml.tar.bz2];

Вниз

Сколько можно наступать на грабли?   Найти похожие ветки 

 
Германн ©   (2007-04-20 16:31) [0]

Четвертый раз за месяц пишу обработчики OnDataAvailable для TWSocket(это из библиотеки ICS) и каждый раз забываю в них поставить try except. Три раза грабли! И сообщений об ошибках нет и ничего не работает!
:((((((


 
Ega23 ©   (2007-04-20 16:35) [1]

with DataSet do
begin
 First;
 While not Eof do
   begin
     ............
    // Регулярно забываю Next ставить...  :)
   end;
end;


 
Германн ©   (2007-04-20 16:46) [2]


> // Регулярно забываю Next ставить...  :)

Так тут хоть виснешь и сразу вспоминаешь про Next. А там блин этот обработчик вызывается из процедуры с дурным кодом:
procedure TCustomWSocket.ASyncReceive(
   Error           : Word;
   MySocketOptions : TWSocketOptions);
var
   bMore    : Boolean;
   ...
begin
   bMore := TRUE;
   while bMore do begin
       FLastError := 0;

       try
           if not TriggerDataAvailable(Error) then begin -> тут вызов
           .....
       except
           bMore := FALSE;
       end;
   end;
end;


 
Ega23 ©   (2007-04-20 16:49) [3]

try
          if not TriggerDataAvailable(Error) then begin -> тут вызов
          .....
      except
          bMore := FALSE;
      end;


А где отпись на except в лог???
Ясен пень, ты никогда этой ошибки не увидишь...


 
Германн ©   (2007-04-20 16:56) [4]


> Ясен пень, ты никогда этой ошибки не увидишь...
>

А какое блин удовольствие получаешь при этом, когда пытаешься трассировать под отладчиком! :-(


 
Ega23 ©   (2007-04-20 17:07) [5]


> А какое блин удовольствие получаешь при этом, когда пытаешься
> трассировать под отладчиком! :-(


Если Stop On Delphi Exceptions отключено, то монописуально.


 
Германн ©   (2007-04-20 17:22) [6]


> Если Stop On Delphi Exceptions отключено

Как раз включено. Но исходники ICS вынесены из Library Path, чтобы не перекомпиллировать их всякий раз, когда нужно перебилдить программу. А перебилдивать приходится часто из-за многочисленных {$IFDEF}


 
Германн ©   (2007-04-21 01:09) [7]

Блин. "Ученье - свет, а неучёных тьма"!
Если б я раньше заглянул на Tools -> Debugger Options -> OS Exceptions, подумал бы что на ней установлено и что эти установки значат, я бы ещё месяц назад смог бы беспрепятственно ловить в отладчике AV в сабже и не мучаться. :-(
Век живи, век учись!



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

Форум: "Прочее";
Текущий архив: 2007.05.20;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.157 c
2-1177593211
ppcumax
2007-04-26 17:13
2007.05.20
IP адрес


2-1177747186
Vlad Oshin
2007-04-28 11:59
2007.05.20
Excel неправильно выдает гиперссылки у ячеек. Почему?


15-1176199472
vasIZmax
2007-04-10 14:04
2007.05.20
Тестирование... на знание


2-1178099432
Neket
2007-05-02 13:50
2007.05.20
Проверка наличия дирректории.....


2-1177622294
SerJaNT
2007-04-27 01:18
2007.05.20
Сохранить в csv





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский