Программа gflags.exe и Visual C++ 6 отладчик

Тема в разделе "WASM.RESEARCH", создана пользователем tomek, 4 авг 2005.

  1. tomek

    tomek New Member

    Публикаций:
    0
    Регистрация:
    4 авг 2005
    Сообщения:
    3
    Адрес:
    Ukraine
    Здравствуйте!

    Скажите пожалуйста, вот я настроил в глобальный настройках утилиты gflags.exe параметры отладки для отслеживания переполнений куч (там 4 галочки). Специально в Visual C++ 6 debuggere делаю переполнение :
    Код (Text):
    1.  
    2.       HANDLE hHeap=HeapCreate(0,128,0);
    3.     LPVOID p1=HeapAlloc(hHeap,0,10);
    4.       memset(p1,'a',12);    // здесь
    5.     char p[10];
    6.     strncpy(p,(char*)p1,9);
    7.     p[9]=0;
    8.     printf("%s",p);
    9.     HeapFree(hHeap,0,p1);
    10.     HeapDestroy(hHeap);
    11.     getch();
    12.  


    и естественно хочу увидеть более информативную отладочную инфу в отладчике. Но что-то кроме HEAP[HeapDebug.exe]: Heap block at 00311E98 modified at 00311EAA past requested size of a ничего не вываливается. Вот в книге Роббинса описана вот такая инфа :
    Код (Text):
    1.  
    2. PAGEHEAP: process 0x490 created debug heap 00430000
    3.     (flags 0x1, 50, 25, 0, 0)
    4. PAGEHEAP: process 0x490 created debug heap 00CF0000
    5.     (flags 0x1, 50, 25, 0, 0)
    6. PAGEHEAP: process 0x490 created debug heap 01600000
    7.     (flags 0x1, 50, 25, 0, 0)
    8. PAGEHEAP: Tail fill corruption detected:
    9.           Allocation at 0x01606FF0
    10.           Requested size 0x0000000A
    11.           Allocated size 0x00000010
    12.           Corruption at 0x01606FFA
    13. PAGEHEAP: Attempt to reference block which is not allocated.
    14.  


    Скажите пожалуйста, как и мне добиться чтобы выводилась такая подробная инфа о переполнении кучи. Потому что в Роббинсе не смог найти как это он так получил эти строки (это Chapter 4 - Windows 2000 Operating System Support for Debuggees)
     
  2. Dr.Golova

    Dr.Golova New Member

    Публикаций:
    0
    Регистрация:
    7 сен 2002
    Сообщения:
    348
    Поставь BoundsChecker