Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.06.2015, 15:54   #61
DarkHacker
Форумчанин
 
Аватар для DarkHacker
 
Регистрация: 12.04.2008
Сообщений: 105
По умолчанию

Цитата:
Сообщение от Sibedir Посмотреть сообщение
Скинь сюда архивом пару типовых картинок.

1. В таймере ставь самоотключение: Timer1.Enable := False
2. После отработки цикла заново его врубай: Timer1.Enable := True

или

избався от application.ProcessMessages;

Трабла всё-таки с памятью. Это 99%. При загрузке есть вложенные try. Там следы у тебя скорее всего и теряются.
Я несовсем корректно выразился. Это БУДЕТ он работать по таймеру, а приведенный код в 2х циклах работает по кнопке. при таймере будет один цикл.
DarkHacker вне форума Ответить с цитированием
Старый 08.06.2015, 15:58   #62
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,242
По умолчанию

1. Библиотеки (dll) используешь?
2. Картинки дай посмотреть, жадина.

Последний раз редактировалось Sibedir; 08.06.2015 в 16:02.
Sibedir вне форума Ответить с цитированием
Старый 08.06.2015, 16:06   #63
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от DarkHacker Посмотреть сообщение
Я несовсем корректно выразился. Это БУДЕТ он работать по таймеру, а приведенный код в 2х циклах работает по кнопке. при таймере будет один цикл.
т.е. сейчас, когда у Вас ошибка валится при удалении проверки if bmp.hanlde, никакого таймера у Вас в коде нет?
Serge_Bliznykov вне форума Ответить с цитированием
Старый 08.06.2015, 17:03   #64
DarkHacker
Форумчанин
 
Аватар для DarkHacker
 
Регистрация: 12.04.2008
Сообщений: 105
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
т.е. сейчас, когда у Вас ошибка валится при удалении проверки if bmp.hanlde, никакого таймера у Вас в коде нет?
Да именно так.

Цитата:
Сообщение от Sibedir Посмотреть сообщение
1. Библиотеки (dll) используешь?
2. Картинки дай посмотреть, жадина.
Возьмите любое изображение 40 на 50 с pf4bit )))
DarkHacker вне форума Ответить с цитированием
Старый 08.06.2015, 17:24   #65
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

попробуй после каждой загрузки сделать FreeImage
Код:
bmp.LoadFromFile (OpenPictureDialog1.FileName);
.....
bmp.FreeImage;
программа — запись алгоритма на языке понятном транслятору
evg_m на форуме Ответить с цитированием
Старый 08.06.2015, 17:40   #66
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,242
По умолчанию

Цитата:
Сообщение от evg_m Посмотреть сообщение
попробуй после каждой загрузки сделать FreeImage
Код:
bmp.LoadFromFile (OpenPictureDialog1.FileName);
.....
bmp.FreeImage;
Да не в этом дело. Даже если это "поможет", то это не значит, что мы нашли ошибку.

DarkHacker
http://www.programmersforum.ru/showp...9&postcount=52

1. Библиотеки (dll) используешь?
Sibedir вне форума Ответить с цитированием
Старый 08.06.2015, 17:53   #67
DarkHacker
Форумчанин
 
Аватар для DarkHacker
 
Регистрация: 12.04.2008
Сообщений: 105
По умолчанию

Цитата:
Сообщение от Sibedir Посмотреть сообщение
Да не в этом дело. Даже если это "поможет", то это не значит, что мы нашли ошибку.

DarkHacker
http://www.programmersforum.ru/showp...9&postcount=52

1. Библиотеки (dll) используешь?
Нет не использую.
DarkHacker вне форума Ответить с цитированием
Старый 08.06.2015, 18:32   #68
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,242
По умолчанию

Ну тады давай исходники.

LoadFromFile лично мной изнасилован по полной. Ошибки были. Но весьма предсказуемые: Нехватка памяти. Ещё рекурсия давала, опять же, предсказуемое переполнения стека. Ни чего сверхестественного не наблюдалось.

Пробуй удалять потихоньку и тестить. Только ни в коем случае не останавливайся, если "о-о-о!!! заработало! ура!!!".

Чё хоть пишешь-то? Столько тайн, столько загадок. Даже картинки не даёшь. Не приличные что-ли?
Выкладывай. Тут сильно смеяться не будут. Они добрые. Я знаю.

//-----------------------------------------------------------------------------------------------------------------------------
А, и кстати, если запускаешь не из Delphi, как себя ведет?

Последний раз редактировалось Sibedir; 08.06.2015 в 18:40.
Sibedir вне форума Ответить с цитированием
Старый 08.06.2015, 20:29   #69
DarkHacker
Форумчанин
 
Аватар для DarkHacker
 
Регистрация: 12.04.2008
Сообщений: 105
По умолчанию

Цитата:
Сообщение от Sibedir Посмотреть сообщение
Ну тады давай исходники.

LoadFromFile лично мной изнасилован по полной. Ошибки были. Но весьма предсказуемые: Нехватка памяти. Ещё рекурсия давала, опять же, предсказуемое переполнения стека. Ни чего сверхестественного не наблюдалось.

Пробуй удалять потихоньку и тестить. Только ни в коем случае не останавливайся, если "о-о-о!!! заработало! ура!!!".

Чё хоть пишешь-то? Столько тайн, столько загадок. Даже картинки не даёшь. Не приличные что-ли?
Выкладывай. Тут сильно смеяться не будут. Они добрые. Я знаю.

//-----------------------------------------------------------------------------------------------------------------------------
А, и кстати, если запускаешь не из Delphi, как себя ведет?
Долго обьяснять про проект, вывел все в отдельный файл, а то размер общего "чуда инженерной мысли" неудобен для транспортировки и развертывания.

Последовал вашему совету, урезал до немогу. Я в тупике. Уверен что ошибка это какая-то мелочь которую я недоосужился прочитать в мане при изучении...

Исходник с траблой на 1254 итерации.
Вложения
Тип файла: rar Для форума.rar (17.0 Кб, 11 просмотров)
DarkHacker вне форума Ответить с цитированием
Старый 09.06.2015, 07:33   #70
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,242
По умолчанию

Блин. Теперь тока вечером смогу что-то сказать. У меня на работе Win7 и DelXE5. Дома XP и есть Del7.
Пока так:
1.
В pas-файле есть ошибки при переносе строк. 1 символ вместо 2-х. Такое у меня было вроди после копи-паста из браузера.
И вроди как из-за этого делфя не может корректно отобразить строку с ошибкой. Но это я могу сильно гнать
Я переформатировал абзацы.

2.
У меня на XE5 ошибка такая
Цитата:
Project Project1.exe raised exception class EOSError with message 'System Error. Code: 87.
Параметр задан неверно'.
Кликаю [Break] - подсвечивается "memo1.Lines.add(inttostr(j)+' -> '+AList_Actions[i]);"
Закоментариваю эту строку. Заново запускаю
Опять
Цитата:
Project Project1.exe raised exception class EOSError with message 'System Error. Code: 87.
Параметр задан неверно'.
Кликаю [Break] - теперь подсвечивается следующая строчка "bmp2.ReleaseHandle;"
Выходит что дебагер сам не в курсе на какой строчке ошибка.

3.
Зачем
Код:
      bmp2.ReleaseHandle;
      bmp2.Dormant;
      bmp2.FreeImage;
?
Я их закомментарил
Код:
  bmp2 := TBitmap.Create;
  for j := 0 to 150000 do begin
    for i := 0 to AList_actions.Count-1 do begin
      if {((bmp2.Handle=0) AND (} FileExists(AList_actions[i]){))} then begin
        bmp2.loadfromfile(AList_actions[i]);

        {БЛОК РАСПОЗНАВАНИЯ}

        memo1.Lines.add(inttostr(j)+' -> '+AList_Actions[i]);
      end;

//      bmp2.ReleaseHandle;
//      bmp2.Dormant;
//      bmp2.FreeImage;
    end;
  end;
  bmp2.Free;
и всё заработало


Вывод
Подобное проявление ошибки лично у меня было лишь при многопоточности. Это приложение само по себе однопоточное, но вот за API, которые ты вызываешь в
Код:
...bmp2.Handle=0...
...
      bmp2.ReleaseHandle;
      bmp2.Dormant;
      bmp2.FreeImage;
я не ручаюсь

ИМХО: Всё вышесказанное непрофессиональное мнение самоучки
Sibedir вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка при загрузке формы CBETJIbIu Microsoft Office Access 2 03.02.2012 23:01
Ошибка при загрузке tae1980 Microsoft Office Excel 2 23.01.2012 10:58
Ошибка: Выбора ОС при загрузке Foxx Операционные системы общие вопросы 5 11.09.2009 01:28
ОШИБКА ПРИ ЗАГРУЗКЕ Костян Пират Операционные системы общие вопросы 5 21.02.2009 12:14
Ошибка при загрузке.... Ronni10 Операционные системы общие вопросы 6 10.01.2008 22:20