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

Вниз

Утечка USER-хэндлов   Найти похожие ветки 

 
GrayWolf   (2007-07-13 20:59) [0]

У меня возникла проблема: есть процедура, в которой динамически создаются контролы (VCL). Потом пользователю показывается модальное диалоговое окно с ними, и затем эти контролы уничтожаются. При просмотре информации о процессе через Process Explorer v 8.35 обнаружил, что всякий раз при отработке процедуры число USER handles (окошко Performane->Handles) увеличивается на единицу. Проблема в том, что не получается локализовать место в программе, где происходит утчека: если я закомментирую ЛЮБУЮ одну половину процедуры, то утечка исчезает, и появляется, только когда отрабатывает процедура целиком.
Как к этому можно подойти, есть ли какие-нибудь утилиты, которыми можно посмотреть USER-объекты, принадлежащие данному процессу, с просмотром информации о них.


 
Rouse_ ©   (2007-07-13 22:12) [1]

Искать черную кошку в темной комнате достаточно сложно, особенно если ее там нет. Посему давай сюда процедурку, если не хочешь узнать про ошибку в 17-ой строке...


 
Anatoly Podgoretsky ©   (2007-07-13 22:44) [2]

> Rouse_  (13.07.2007 22:12:01)  [1]

Да он почему то считает, что ему должны выдать старый Handle


 
GrayWolf   (2007-07-14 00:07) [3]

> Rouse_ ©   (13.07.07 22:12) [1]
Процедура вызывает другие процедуры и т.д., привести весь код нет никакой возможности.

> Anatoly Podgoretsky ©   (13.07.07 22:44) [2]
> Да он почему то считает, что ему должны выдать старый Handle

Не понял смысла фразы


 
VirEx ©   (2007-07-14 12:31) [4]

где-то нет CloseHandle


 
Инс ©   (2007-07-14 12:54) [5]


> где-то нет CloseHandle


Причем тут CloseHandle к User-объектам?


 
VirEx ©   (2007-07-14 13:15) [6]


>  [5] Инс ©   (14.07.07 12:54)

ты выпал из гнезда?


 
Инс ©   (2007-07-14 13:43) [7]


> ты выпал из гнезда?


Для тех кто в танке, CloseHandle закрывает описатели только объектов ядра - файлы, пайпы, ивенты, мьюетексы, семафоры, файлмэппинги, порты завершения, ожидаемые таймеры и др. А сабж вроде как о User-объектах, таких как окна, user-таймеры. Есть еще GDI объекты - кистья, перья, регионы, битовые маски.
Так кто еще из гнезда выпал?


 
VirEx ©   (2007-07-14 15:38) [8]

не обратил внимания на заголовок.
ну раз ты такой умный, и даже читаешь хэлпы, то что же не нашел такой функции как GetHandleInformation


 
Инс ©   (2007-07-14 16:37) [9]


> не обратил внимания на заголовок.

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


> ну раз ты такой умный, и даже читаешь хэлпы, то что же не
> нашел такой функции как GetHandleInformation

Во-первых, воздержись от наездов. Мало того, что ты первый начал, так еще после того, как тебе указали на твою неправоту - продолжаешь. Во-вторых - и GetHandleInformation здесь тоже абсолютно ни причем. Эта функция также работает только с объектами ядра (точнее, с их описателями), и с помощью нее можно проверить какие флаги для них установлены в таблице дескрипторов процесса. Можно еще валидность хэндла проверить. С юзер-объектами она не работает и не должна.


 
VirEx ©   (2007-07-14 20:39) [10]


>  [9] Инс ©   (14.07.07 16:37)
>
> > не обратил внимания на заголовок.
>
> Дешевая отмазка человека, который не умеет признавать свою
> некомпетентность.

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

зы. вот народ пошел а, подсказываю как могу и что знаю, а он еще нос воротит :)
...оффтоп

тебе религия запрещает выложить эту процедуру?


 
Инс ©   (2007-07-14 21:03) [11]


> [10] VirEx ©   (14.07.07 20:39)


Ау! Парень! Ты сейчас с кем разговаривал? Я НЕ АВТОР САБЖА! Мне абсолютно по центру, ответит на него кто-либо или нет. Ты на меня наехал, вот и комментируй свои слова по отношение ко мне.


 
VirEx ©   (2007-07-14 21:22) [12]


>  [11] Инс ©   (14.07.07 21:03)

ок. подправишь сам в [10] для себя :)


 
Инс ©   (2007-07-14 21:30) [13]


> [12] VirEx ©   (14.07.07 21:22)


Нет, приятель, за слова отвечать нужно. Ты там что-то про гнездо говорил? Давай-ка поподробнее. Сначала про гнездо, а потом - про "раз такой умный".


 
app ©   (2007-07-14 21:32) [14]

> Инс  (14.07.2007 21:30:13)  [13]

В почту



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

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

Наверх




Память: 0.5 MB
Время: 0.017 c
11-1185096701
Dy1
2007-07-22 13:31
2008.03.09
Посоветуйте плз компонент для печати


6-1181760658
Beks
2007-06-13 22:50
2008.03.09
Отправка сообщения через SMTP


4-1184247411
GTR86
2007-07-12 17:36
2008.03.09
Номер винчестера


2-1202796912
жорик
2008-02-12 09:15
2008.03.09
открыт ли файл


2-1202745191
antonn
2008-02-11 18:53
2008.03.09
доступ к рекорду в другом окне