Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 8
Регистрация: 29.07.2014
Сообщений: 513
1

При длительной работе программа зависает

24.11.2014, 08:34. Показов 834. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток
вот кусок кода
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
procedure TForm1.Timer2Timer(Sender: TObject);
var
  Result,Result1: THandle;
  i,x,y,color1,color2,flagcolor:integer;
  Rect: TRect;
  dc: HDC;
begin
............
 dc:=GetDC(Result1);
 Color1:=GetPixel(dc, x, y);
 i := MakeLong( x, y );
 SendMessage(Result, WM_ACTIVATE, 1, 1);
 SendMessage(Result,WM_LBUTTONDOWN,MK_LBUTTON, i);
 SendMessage(Result, WM_LBUTTONUP,MK_LBUTTON, i);
 dc:=GetDC(Result1);
 Color2:=GetPixel(dc, x, y);
 if (Color1=Color2) and (flagcolor=1) then
  Begin
  flagcolor:=0;
  Form1.Timer2.Enabled:=False;
  Form1.SpeedButton2.Down:=False;
  End;
 
if Color1<> Color2 then
  Begin
  flagcolor:=1;
  End;
если работает долга весит прогу
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.11.2014, 08:34
Ответы с готовыми решениями:

Зависает программа при работе в потоке
Здравствуйте. При попытке найти и скопировать много файлов (в потоке), основной поток программы не...

BackgroundWorker зависает при длительной работе
Добрый вечер, Обрабатываю в отдельном потоке BackgroundWorker Excel файлы с большим количеством...

Чем забивается оперативная память при длительной работе ?
В последнее время стал замечать, что сумма используемой памяти в списке всех процессов не...

Как бороться с утечкой памяти в приложении при его длительной работе
Всем доброго времени суток. Началось все с того, что после недельной бесперерывной работы...

3
Модератор
3490 / 2613 / 741
Регистрация: 19.09.2012
Сообщений: 7,974
24.11.2014, 09:10 2
Не понятно, откуда берется Result1 и зачем для него контекст получается два раза без освобождения.
0
0 / 0 / 8
Регистрация: 29.07.2014
Сообщений: 513
24.11.2014, 10:24  [ТС] 3
да с контекстом я перемудрил
а как освобождать

Добавлено через 49 минут
извините что не в тему как узнать имена фреймов или окон в чужом окне
0
Модератор
3490 / 2613 / 741
Регистрация: 19.09.2012
Сообщений: 7,974
24.11.2014, 10:41 4
Цитата Сообщение от inetinf Посмотреть сообщение
а как освобождать
ReleaseDC
1
24.11.2014, 10:41
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.11.2014, 10:41
Помогаю со студенческими работами здесь

Какую модель ноутбука выбрать чтобы при длительной работе минимально уставали глаза
Ноутбук для работы, программирования, думаю лучше чтобы видеокарта была дискретная или...

комп зависает намертво при работе с новым винчестером, после перезагрузки компа зависает при загрузке BIOS
купил новый винчестер. комп стал зависать намертво. при перезагрузке, зависает уже при загрузке на...

Зависает МК при работе с таймерами
Доброго времени суток. Недавно столкнулся с такой проблемой. Есть функция задержки, реализована...

Зависает МК при работе с flash
Добрый вечер! Пытаюсь делать сохранение настроек в памяти stm32f405. Начал работать с памятью,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru