![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблема сравнения дат
Тимофеич © (2012-11-03 18:03:00)Здравствуйте! Полдня сижу парюсь,ниче не выходит. Може подскажете где ошибка? В папке программы куча файлов с именами в виде дат(12.10.2012, 13.10.2012 и т.д.) В окне программы ListView и два DateTimePicker-a Нужно сделать выборку и добавить в пустой список имена файлов которые удовлетворяют указанному периоду датапикеров(от первого до второго). Просматриваю все имена используя связку FindFirst-FindNext походу сравниваю StrToDate(Result.name) и DateTimePicker.Date(первый и второй входит ли в период?). И на процедуре сравнения получаю AccessViolation :-( Подозреваю что неверно передает дату(с лишними скрытыми символами),но на ShowMessage(Result.name) формат даты правильный. Куда копать непойму :-(
Тимофеич (2012-11-04 15:49:00) [1]Старый проект сохранил, будет потом интересно поковырять в чем разница ;) http://www.gunsmoker.ru/2009/05/access-violation.html- оч.занимательная и полезная статья! :)
Германн (2012-11-04 03:18:00) [2]
> sniknik © (03.11.12 23:16) [15]
>
> Германн © (03.11.12 21:38) [14]
> > Читай
> Если вы не программист и не пытаетесь исправить ошибку в
> СВОЕЙ программе, эта статья - не для вас. До свидания.
>
> :))))
> ... это не для него.
Даже если это и не для него, то всё равно ещё одна ссылка на эту статью в И-нете никому не помешает.
P.S.
Вот где-бы и как-бы вывести большими красными буквами - "Наличие сообщения об AV - означает то, что в коде точно есть ошибка работы с памятью! А отсутствие такого сообщения отнюдь не означает, что ошибок работы с памятью в коде нет!"?
Очень злой (2012-11-04 01:51:00) [3]
> Тимофеич (03.11.12 21:03) [13]
>
> Почему не повезло? Результат достигнут, программа заработала.
> А искать в чем был глюк,времени нет,сроки поджимают. Потом
> посмотрю,как освобожусь на досуге...
А старый проект хоть сохранил?
sniknik (2012-11-03 23:16:00) [4]Германн © (03.11.12 21:38) [14]
> Читай
Если вы не программисти не пытаетесь исправить ошибкув СВОЕЙ программе, эта статья - не для вас. До свидания.
:))))
... это не для него.
Германн (2012-11-03 21:38:00) [5]
> Тимофеич (03.11.12 21:03) [13]
>
> Почему не повезло? Результат достигнут, программа заработала.
>
Пока не найдена причина AV - ничего не достигнуто. Ошибка как была, так и осталась. А то что перестало выдаваться сообщение об AV, так это просто особенность ошибок работы с памятью.
Читай http://www.gunsmoker.ru/2009/05/access-violation.html
Тимофеич (2012-11-03 21:03:00) [6]Почему не повезло? Результат достигнут, программа заработала. А искать в чем был глюк,времени нет,сроки поджимают. Потом посмотрю,как освобожусь на досуге...
Германн (2012-11-03 20:40:00) [7]
> Тимофеич (03.11.12 20:25) [9]
>
> Создал новый VLC Forms Application, скопировал код туда
> и все заработало!
Не повезло. Сочувствую. :(
Тимофеич (2012-11-03 20:39:00) [8]Всем спасибо за помощь!
Очень Злой (2012-11-03 20:31:00) [9]тогда проверь или Result.name не содержит еще каких-нить пробелов или что-нить в этом роде...
Или может вместе с нормальными именами попадается что-то прочее, что и способствует появлению AV
вобщем так трудно сказать что у тебя в программе не так, не видя кода и данных
Тимофеич (2012-11-03 20:25:00) [10]Создал новый VLC Forms Application, скопировал код туда и все заработало! Мистика... Теперь играю в игру "Найди 10 отличий" :-)
Тимофеич (2012-11-03 20:03:00) [11]Result:TSearchRec; Кода немного, вроде ошибок нет, но буду искать... :-)
Очень Злой (2012-11-03 19:50:00) [12]а Result - это что такое у тебя?
Anatoly Podgoretsky (2012-11-03 19:32:00) [13]Есть подозрение, что у тебя ошибка в программе.
sniknik (2012-11-03 19:14:00) [14]> Спрашивал бы я тут...
может поговорить охота. развлечь себя/нас, так сказать.
> или что-то другое?
естественно это глюк... в коде... твоем... или в данных. одно из двух. хотя вот "AccessViolation" намекает на первое.
Тимофеич (2012-11-03 19:05:00) [15]Подскажите плиз кто знает,нужно очень! В чем может быть дело FormatSettings даты или заморочка с строками или что-то другое?
Тимофеич (2012-11-03 18:40:00) [16]Выдает сегодняшнюю дату в формате dd.mm.yyyy Книжек куча,то что надо не нашел :-( Спрашивал бы я тут...
MBo (2012-11-03 18:18:00) [17]А что у тебя выдаёт DateToStr(Now) ?
sniknik (2012-11-03 18:13:00) [18]> Куда копать непойму :-(
как только возникает такой вопрос, так сразу берись за книжки, "копать" следует в них.