Я уже много лет использую! Heap -p -a для различных задач. Теперь я начинаю отлаживать Win8 с помощью WinDbg 6.2.9200, найденного в последнем Win8 sdk.! Heap -p -a VS! Heap -x
Здесь я обнаружил, что! Heap -p -a не всегда работает, и что вывод от ! Адрес «рекламирует» использование! Heap -x (см. Ниже).
После прочтения кучи -? , Я не понимаю разницы! Кто знает разницу?
Какую команду вы используете для просмотра деталей кучного блока?
0:008> !address 335168f8
<cut cut>
Usage: Heap
Base Address: 32b43000
End Address: 33540000
Region Size: 009fd000
State: 00001000 MEM_COMMIT
Protect: 00000004 PAGE_READWRITE
Type: 00020000 MEM_PRIVATE
Allocation Base: 32570000
Allocation Protect: 00000004 PAGE_READWRITE
More info: heap owning the address: !heap 0xa80000
More info: heap segment
More info: heap entry containing the address: !heap -x 0x335168f8
0:008> !heap -x 0x335168f8
Entry User Heap Segment Size PrevSize Unused Flags
-----------------------------------------------------------------------------
335168f0 335168f8 00a80000 32570000 30 30 1c busy extra fill
0:008> !heap -p -a 0x335168f8
0:008> .echo "nothing !!"
nothing !!
Не запрашивает ли «-p» информацию о куче страницы? Я думаю, что кучи страниц должны быть включены сначала (перед запуском рассматриваемого процесса) с чем-то вроде gflags. –
Да, я согласен, что -p звучит как куча страниц, но «-p -a» всегда работал, даже если куча страниц не включена. Также он намного быстрее, чем -x. В любом случае, если -x - путь, я должен справиться с этим. –
6.2.9200 также не выводится на мою машину. Также 6.12.2. Какова была ваша старая версия? У меня много версий, поэтому я мог бы попробовать. –