Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.07;
Скачать: CL | DM;

Вниз

Ошибка Error creating window device context   Найти похожие ветки 

 
vic_vm ©   (2003-05-06 15:57) [0]

Что это за ошибка такая
Error creating window device context ?
Причем возникает не регулярно, а лишь при каких-то непонятных обстоятельсвах


 
Игорь Шевченко ©   (2003-05-06 17:27) [1]

Ошибка в коде (неприведенном)


 
Morfein ©   (2003-05-06 18:00) [2]

Или нехватка графических ресурсов... что тоже, в конечном счёте, есть ошибка в коде :)


 
vic_vm ©   (2003-05-06 21:31) [3]

>Ошибка в коде (неприведенном)
Во первых - это компонент (не мой), но дело не в этом...
Во вторых - все это появляется в Dll которая является COM сервером.

>Или нехватка графических ресурсов
Не думаю. Есть несколько экземпляров одного приложения к которым она подключена и что странно - в одном из них эта ошибка вылазит, в других - нет.

а вообще, если нужон исходный код то вот он - кусок из Controls.pas

function TWinControl.GetDeviceContext(var WindowHandle: HWnd): HDC;
begin
if csDesigning in ComponentState then
Result := GetDCEx(Handle, 0, DCX_CACHE or DCX_CLIPSIBLINGS)
else
Result := GetDC(Handle);
if Result = 0 then raise EOutOfResources.CreateRes(@SWindowDCError);
WindowHandle := FHandle;
end;

Вот именно тут это и вылазит
raise EOutOfResources.CreateRes(@SWindowDCError);

Это скорей всего какой-то из приколов Delphi, но почему он возникает и как с этим бороться?


 
Morfein ©   (2003-05-06 21:35) [4]

Не, ну японский Бог... ты бы хоть перевёл название исключения!
EOutOfResources = Нехватка ресурсов!


 
vic_vm ©   (2003-05-06 22:53) [5]

2 Morfein
Ну и что ?!!!!!
В этом месте можно вставить raise EPrinter...,
но это не значит что произошла ошибка при печати
Это специалисты Borland предпологают что если GetDC возвратила ноль, то скорее всего не хватает ресурсов...
А реальная причина не известна. Скорее всего прийдется вставлять вместо raise анализ GetLastError....


 
nikkie ©   (2003-05-06 23:00) [6]

>vic_vm
Если ресурсов хватает, то скорее всего WindowHandle - не есть valid hwnd.
Твое объяснение ничего не объяснило. Зачем твоему COM серверу понадобился device context? Это ActiveX? Что за приложение?


 
vic_vm ©   (2003-05-06 23:04) [7]

2 nikkie
Это плагин....
Он создает окно в другом приложении...
http://www.vicscale.narod.ru/searchband.html

Обидно что нет какой-то закономерности...
Это вылазит очень редко, но иногда вылазит.


 
vic_vm ©   (2003-05-07 12:25) [8]

Up


 
Morfein ©   (2003-05-07 16:08) [9]

>>бидно что нет какой-то закономерности...
>>Это вылазит очень редко, но иногда вылазит.

Вот поэтому я и говорю, что это нехватка ресурсов.



Страницы: 1 вся ветка

Текущий архив: 2003.07.07;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.011 c
3-19963
_Alex_
2003-06-11 19:52
2003.07.07
Числа с плавающей точкой из базы Access


14-20292
BJValentine
2003-06-20 13:35
2003.07.07
Глюк!


9-19942
[Baradoo]
2003-01-21 21:26
2003.07.07
Небольшая полезная тема (для знатаков OpenGl)


7-20331
Leos
2003-04-25 21:27
2003.07.07
Clipboard


1-20067
Chery
2003-06-24 19:23
2003.07.07
Считать с txt файла только строку с указанным номером ?