|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
24.08.2012, 10:20 | #1 |
Пользователь
Регистрация: 06.12.2007
Сообщений: 33
|
Потеря фокуса при обработке файлов
Странно, но больше причин не вижу (хотя не исключаю, что слепой), но судя по всему, когда программа delphi теряет фокус - она выдает ошибку I/O Error 6. Иногда "invalid floating point operation". Если фокус не менять, то программа может работать долго (очень долго) и никакиих ошибок не выдается.. Хотя и при смене фокуса не всегда вылетает, но если вылетает - то тогда, когда фокус менялся)
Суть программы - периодически (по таймеру) находится самый последний файл в каталоге, считывается самая последняя строчка и данные отправляются на сервер... Как это исправить? Помогите пожалуйста Код:
|
24.08.2012, 10:28 | #2 |
кривокодер ;)
Форумчанин
Регистрация: 20.06.2008
Сообщений: 707
|
Формат файла приведите. Скажем, последние пару строк.
И каким, максимум, может быть размер файла (количество строк)?
"А как написать праграму?, "ришыти задачьку очинь нада" ©с форума. Жить становится интереснее, жить становится веселее...
{Быть или не быть} {Неуспешный суицид} |
24.08.2012, 10:41 | #3 | |
Пользователь
Регистрация: 06.12.2007
Сообщений: 33
|
Формат:
Цитата:
Если поможет ошибку invalid floatin дает на эту строку: dateTemp:=FileDateToDateTime(FileAg e(DIR+searchResult.Name)); |
|
24.08.2012, 10:46 | #4 |
кривокодер ;)
Форумчанин
Регистрация: 20.06.2008
Сообщений: 707
|
Я бы посоветовал взглянуть на TStringList.
Загрузка в него и использование явно организовано лучше, чем у Вас... А если нужно строку разделять на параметры - то из каждого итема СтрингЛиста организовывать ещё один СтрингЛист с делимитером ",".
"А как написать праграму?, "ришыти задачьку очинь нада" ©с форума. Жить становится интереснее, жить становится веселее...
{Быть или не быть} {Неуспешный суицид} |
24.08.2012, 10:52 | #5 |
Пользователь
Регистрация: 06.12.2007
Сообщений: 33
|
Код:
|
24.08.2012, 10:55 | #6 |
кривокодер ;)
Форумчанин
Регистрация: 20.06.2008
Сообщений: 707
|
Что за ошибка-то?
На какой строке возникает? Запустите программу под дебагом хотя бы (кнопка Run в дельфи).
"А как написать праграму?, "ришыти задачьку очинь нада" ©с форума. Жить становится интереснее, жить становится веселее...
{Быть или не быть} {Неуспешный суицид} |
24.08.2012, 10:56 | #7 |
Пользователь
Регистрация: 06.12.2007
Сообщений: 33
|
"invalid floating point operation" дает на эту строку: dateTemp:=FileDateToDateTime(FileAg e(DIR+searchResult.Name));
|
24.08.2012, 11:16 | #8 |
кривокодер ;)
Форумчанин
Регистрация: 20.06.2008
Сообщений: 707
|
А зачем тебе конвертировать дату в TDateTime, если ты её выводить не собираешься ни куда, а только сравниваешь?
http://www.delphibasics.ru/FileAge.php Оперируй с простыми типами и делай проверку на возврат значения -1 Ещё одно... Код:
А ещё лучше Код:
"А как написать праграму?, "ришыти задачьку очинь нада" ©с форума. Жить становится интереснее, жить становится веселее...
{Быть или не быть} {Неуспешный суицид} Последний раз редактировалось Johnson; 24.08.2012 в 11:23. |
24.08.2012, 11:25 | #9 |
Пользователь
Регистрация: 06.12.2007
Сообщений: 33
|
Спасибо, через часик попробую - отпишусь. Что странно, ошибка то возникает регулярно (каждую потерю фокуса), то её не дождешься и как будто её вовсе нет... В общем, буду пробовать и модифицировать. Спасибо за наводки и подсказки. А где можно инфу по Формату даты файла почитать, как получается это число, что это за тип такой? Чет я толковой инфы не нашел
|
24.08.2012, 11:38 | #10 |
кривокодер ;)
Форумчанин
Регистрация: 20.06.2008
Сообщений: 707
|
Я думаю, что потеря фокуса это косвенная причина. Хотя черт его знает, смотреть надо.
Есть мысль ещё, что IO ошибки были из-за того, что вы пытались открыть файл, который открыт уже другой програмой.
"А как написать праграму?, "ришыти задачьку очинь нада" ©с форума. Жить становится интереснее, жить становится веселее...
{Быть или не быть} {Неуспешный суицид} |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
TWebBrowser - потеря фокуса в MDI application | AvRob | Компоненты Delphi | 2 | 30.07.2012 18:46 |
Потеря фокуса Edit | Fon_Blut | Компоненты Delphi | 6 | 30.05.2012 23:09 |
Потеря фокуса | Naive | JavaScript, Ajax | 1 | 16.11.2010 05:53 |
Затруднение при обработке строк | GoodTimes | Общие вопросы C/C++ | 6 | 16.06.2010 18:00 |
Потеря фокуса окна в приложении | Dr.Badnezz | Общие вопросы Delphi | 4 | 01.12.2008 23:18 |