|
|
|
Resources Licks
|
|||
|---|---|---|---|
|
#18+
Есть такая штука BoundsChecker 7.2.(кто не в курсе спрашивайте - расскажу) очень классная вещь, много раз меня выручала от собственной кривизны. Делаю классический MFC CDialog проект (с 2 - умя кнопочками), добавляю еще один CDialog производный класс, но не от первого диалога, а по команде Insert Dialog (средствами оболочки - никакой отсебятены). Добавим кнопочку в первый для того, чтобы по нажатию на нее выскакивал второй диалог посредством DoModal(). Другими словами - минимум кода, по учебному пособию для чайников... Скомпилил, запускаю екзешник в BoundsChecker'e на выполнение и в результате (на картинке) Такое бывает не только, когда создаются 2 диалоговых окна, сей эффект можно наблюдать и при создании одного пустого MFC CDialog'a, без всякого дополнительного кода, но не всегда. Иногда бывает и прокатывает по нулям и ресурсы не утекают. В общем, help, кто знает. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2005, 11:12 |
|
||
|
Resources Licks
|
|||
|---|---|---|---|
|
#18+
С BoundsChecker'ом не работал, но скажу :). Вы уверены, что утечки связаны с открытием диалогов? Навернякак их вызывает ваш собственный код, при этом необязательно размещенный в классах диалогов. А вообще, не исключена ситуация, что сама MFC подтекает. Попробуйте проверить голый проект, созданный с нуля в AppWizard'e. И сообщите о результатах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2005, 11:53 |
|
||
|
Resources Licks
|
|||
|---|---|---|---|
|
#18+
Вот и я говорю, что иногда бывает так, что создаешь Dialog based MFC Project - все. Компилишь, запускаешь BC и результат Вы уже видели, а иногда все проходит гладко, причем не важно VC 6.0 + SP 5 или VC.Net 2002. Не важно release или debug. BC очень советую, отличная программа (весит ~70-80 метров в архиве, так я ее по dial up вытянул - денег не пожалел). В Word'e 2003 и другом Microsoft софте столько утечек всяких. DrWeb 4.32b идеально проходит тест на вшивость, ни одной ошибочки. Вот созданный с нуля проект, с отключеными ActiveX и About Box, больше ничего не менял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2005, 12:49 |
|
||
|
Resources Licks
|
|||
|---|---|---|---|
|
#18+
CerebrumВот и я говорю, что иногда бывает так, что создаешь Dialog based MFC Project - все. Компилишь, запускаешь BC и результат Вы уже видели, а иногда все проходит гладко, причем не важно VC 6.0 + SP 5 или VC.Net 2002. Не важно release или debug.Ну тогда можно не волноваться. Это утечки мизерные, и надо полагать, происходят уже в момент завершения работы приложения, когда на них уже покласть с высокого дерева, винда и так все подчистит при удалении процесса. Главное - это не создавать утечек своим кодом. Насчет Dr. Web'а вы зря. Я бы сказал, что MFC - вещь более сложная, чем антивирус. Не с точки зрения сложности алгоритмов, а с точки зрения необходимости управлять большим количеством разнотипных ресурсов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2005, 14:13 |
|
||
|
Resources Licks
|
|||
|---|---|---|---|
|
#18+
Да, ты прав эти ошибки вылетают при выходе из программы, хоть ядро их все равно исправляет, хотелось бы все-таки не доставлять системе этих неприятностей. Самое сложное приложение, которое я наваял, после выхода бросает 3 таких утечки, остальные проблемы почикал. Я просто считаю, что если есть шанс выйти из проги без последствий (DrWeb доказал это, а так же проги написаные на VB (но там за тебя все сделают)), почему бы его не реализовать. По поводу MFC я ничего плохого сказать не хотел и не хочу, т.к. очень уважаю труд тех, кто смог перелопатить такую махину кода, нравиться ли это кому-то или нет, но уважение это достойно, имхо, но и DrWeb я уважаю. Вот скрин после выхода из MS Word 2003 SP2, просто зашел и вышел, ничего не далал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2005, 15:36 |
|
||
|
Resources Licks
|
|||
|---|---|---|---|
|
#18+
Cerebrum Я просто считаю, что если есть шанс выйти из проги без последствий (DrWeb доказал это, а так же проги написаные на VB (но там за тебя все сделают)), почему бы его не реализовать. Интересно, а что покажет боундс чекер если его натравить на себя же? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2005, 15:57 |
|
||
|
Resources Licks
|
|||
|---|---|---|---|
|
#18+
CerebrumНельзя, ругается Видать совесть не чиста =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2005, 16:34 |
|
||
|
Resources Licks
|
|||
|---|---|---|---|
|
#18+
Заставил таки, запустил сам BC, а в нем (тестируемом) запустил тест своей "голой" диалог-проги ff (см. выше). Как видно из скрина, они не смогли поделить какие-то разделяемые ресурсы, поэтому за чистоту эксперимента не ручаюсь Я уверен, что разарботчики не дураки - смогли бы настроить свою прогу под нормальный выход. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2005, 16:49 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=33416987&tid=2032347]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
| others: | 246ms |
| total: | 395ms |

| 0 / 0 |
