![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 16.10.2009
Сообщений: 42
|
![]()
Доброго времени суток всем уважаемым!
Вопрос не могу разрешить. Вообще кода многа, нет смысла выкладывать. Суть программы в том, чтобы получать данные извне по ДДЕ, обрабатывать и выдавать на выходе команды другому приложению функциями API. Иногда вылетает ошибка "list index out of bounds". Критерии и условия, когда она вылетает, определить не удается. Всегда по разному и неожиданно. В программе куча циклов, подпрограмм с циклами. Вопрос таков. Может быть можно в процессе выполнения (не в процессе отладки) программы в Delphi наблюдать за все используемыми в коде переменными? |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 13.10.2008
Сообщений: 714
|
![]()
На мрй взгляд нуно создать watchList для переменных и во время отладки юзать F4(переход к выполнению операторов,где указан курсор),тойсть после кажд цикла юзать эту комбинацию.
Зы: 1.данная ошибка возникает при переборе значения некого типа переменной 2.выход за рамки переменной(возможно в цикле) |
![]() |
![]() |
![]() |
#3 | |
Новичок
Джуниор
Регистрация: 23.10.2009
Сообщений: 2
|
![]() Цитата:
вывод значений переменных на форму (заголовок, статусбар и тп.) либо ведение log-файла (можно сделать там типа таблички для удобочитаемости, если много переменных) |
|
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 16.10.2009
Сообщений: 42
|
![]()
Спасибо за советы, но отладка не пойдет. Программа сложная, не понятно, где может возникать ошибка. Работа предназначена для длительной работы и в режиме рантайм должна принимать данные по ДДЕ из одной программы, выполнять вычисления и отдавать некие команды функциями АПИ другой программе. Так вот, время от времени бывают сбои именно с этой ошибкой. Надо как то в режиме рантайм смотреть переменные.
|
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 13.10.2008
Сообщений: 714
|
![]()
я бы еще сделал так:
проставил бы бряки(брекпоинты) по всему коду программы, и ты будешь знать между какими бряками прорисходит ошибка, что даст тебе опредененный кусок кода с твоей логической ошибкой! |
![]() |
![]() |
![]() |
#6 |
Заблокирован
Регистрация: 04.04.2009
Сообщений: 43
|
![]()
if (.....count = 0) or (.....count = -1) then exit;
|
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 16.10.2009
Сообщений: 42
|
![]()
Спасибо всем за советы, но ничего из вышесказанного не пойдет, так как код большой, циклов дохерища.
Может кто по опыту поймет. Я заметил ошибка эта у меня возникает всегда в одном случае. Когда переключаешься на какое-нибудь другое приложение, потом обратно возвращаешься в свою прогу - иногда возникает эта ошибка. Ну может кто знает? Ветераны? Спасибо. |
![]() |
![]() |
![]() |
#8 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]()
Уже красная карточка есть...
Читаем правила. Некоторые выражения у нас не допускаются... |
![]() |
![]() |
![]() |
#9 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
![]()
выводить в переменные не хотите, отлаживать брекпоинтами не хотите...
списки tlist используются в программе, массивы? ...закомментируйте последовательно код, сначала передачу внешнему приложению, посмотрите будет-ли ошибка, потом двигайтесь дальше.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Сообщение об ошибке LIST INDEX OUT IF BOUNDS | cowboy | Общие вопросы Delphi | 9 | 16.10.2009 13:34 |
обход ошибки List index out of bounds (0) | Яр|/||< (^_^) | Общие вопросы Delphi | 3 | 29.06.2009 12:45 |
Табулирование функции. Ошибка 'List index out of bounds(0)' | Мэр | Общие вопросы Delphi | 2 | 03.06.2009 09:11 |
При запуске ComboBoxEx пишет List index out of bounds -1. | dx+ | Общие вопросы Delphi | 6 | 12.06.2008 22:32 |