У меня есть WinDBG 6.12.0002.633 x86, и я использую его для просмотра post-mortem kdmp из приложения Windows Mobile 6 ARMV4I.windbg противоречивая информация
Когда я перехожу к анализу вызова, я получаю много неизвестных. В анализе я вижу в разделе * FAULTING_IP *, что ошибка находится в модуле tcpstk
. (для которых у меня также есть символы, но в разделе * STACK_TEXT * адреса tcpstk
отображаются как только адреса, без символов.
Кроме того, в разделе * MODULE_NAME * я получаю еще одно неизвестное, хотя оно просто сказано . вызвавшая ошибка модуля был в tcpstk
результата команды !analyze -v
является:
1:128:armce> !analyze -v
***snip!***
FAULTING_IP:
tcpstk!_DerefIF+38 [\private\winceos\comm\tcpipw\ip\iproute.c @ 1032]
01b0d6f0 ???????? ???
***snip!***
IP_ON_HEAP: 07b00090
The fault address in not in any loaded module, please check your build's rebase
log at <releasedir>\bin\build_logs\timebuild\ntrebase.log for module which may
contain the address if it were loaded.
FRAME_ONE_INVALID: 1
STACK_TEXT:
761efa6c 07b00090 : 7b858453 00000003 00000000 00000000 : 0x7b0d6f0
761efa7c 07b0020c : 7b858453 506f010a 00000000 00000000 : 0x7b00090
761efacc 78012d38 : 7b858453 506f010a 00000000 00000000 : 0x7b0020c
761efaf4 78013cdc module_78010000!AdapterBindingManager::NetUp+0xb4 [bar.cpp @ 268]
761efb34 78014b78 module_78010000!AdapterBindingManager::EnterState+0x5e4 [bar.cpp @ 1327]
761efda4 78015c08 module_78010000!AdapterBindingManager::ProcessEvent+0x8e4 [bar.cpp @ 1298]
761efdd8 03f668dc module_78010000!MediaSense+0x25c [foo.cpp @ 673]
761efe94 00000000 coredll_3f49000!ThreadBaseFunc+0x98 [\private\winceos\coreos\core\dll\apis.c @ 633]
MODULE_NAME: Unknown_Module
IMAGE_NAME: Unknown_Image
DEBUG_FLR_IMAGE_TIMESTAMP: 0
STACK_COMMAND: ~128s ; kb
FAILURE_BUCKET_ID: INVALID_POINTER_WRITE_c0000005_Unknown_Image!Unknown
Если переключиться на команду kp
, я вдруг вижу, что часть стека вызовов
1:128:armce> kp
Child-SP RetAddr Call Site
761efa6c 01b0d6e0 tcpstk!_DerefIF(struct Interface * IF = 0x7b858453)+0x38 [\private\winceos\comm\tcpipw\ip\iproute.c @ 1032]
761efa6c 00000000 tcpstk!_DerefIF(struct Interface * IF = 0x7b858453)+0x28 [\private\winceos\comm\tcpipw\ip\iproute.c @ 1026]
Почему команда !analyze -v
не может показать полностью декодированный столбец? Почему это так много неизвестных?
Вы разрешили все окна и символы приложения? Чтобы исправить окна, вы можете ввести только .symfix ;.reload, то для вашего приложения вам нужно скомпилировать его либо в отладке, либо в выпуске без личных символов, удаленных из pdbs, затем повторно присоедините WinDbg и посмотрите, – EdChum
Если бы это было просто вопрос о том, что символы не будут разрешены, я все равно буду видеть имя модуля, но не имя функции. Я даже не вижу здесь имени модуля. Просто адрес, который не указывает ни на что. – PaulH