Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2008.03.09;
Скачать: [xml.tar.bz2];

Вниз

Утечка 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 вся ветка

Форум: "WinAPI";
Текущий архив: 2008.03.09;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.037 c
8-1176707946
Jeer
2007-04-16 11:19
2008.03.09
Метод распознавания эффекта красных глаз


2-1202721542
newbie2
2008-02-11 12:19
2008.03.09
Как сохранить integer размером больше 2-байт в xls?


15-1201834853
Slider007
2008-02-01 06:00
2008.03.09
С днем рождения ! 1 февраля 2008 пятница


15-1202075537
mvp
2008-02-04 00:52
2008.03.09
PHP + Flash + Video


6-1181805887
Арсений
2007-06-14 11:24
2008.03.09
Заполнить TEXTAREA используя TWebBrowser





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский