Могу ли я получить исходный код из Crash Signature (отчет о сбое Windows)

Под сбоем подписи я подразумеваю «подпись проблемы», но в стеке не допускается слово «проблема» в заголовке.

Мои приложения зависают случайным образом, что приводит к типичному диалогу сбоя Windows 7. Вы нажимаете кнопку «Показать детали проблемы», и она показывает «подпись проблемы», которая выглядит примерно так:

Problem signature:
Problem Event Name:       APPCRASH
Application Name:         MyAPP.exe
Application Version:      1.0.0.1
Application Timestamp:    56f42d87
Fault Module Name:        KERNELBASE.dll
Fault Module Version:     6.1.7601.23392
Fault Module Timestamp:   524f83ff
Exception Code:           e06d7363
Exception Offset:         000084d5
OS Version:               6.1.7600.2.1.0.256.48
Locale ID:                1033
Additional Information 1: 59d3
Additional Information 2: 59d2b19b48819489f0f177fd879bb2a4
Additional Information 3: 4230
Additional Information 4: 4230b7cc692f7b01f72cd61a9ca3153f

я вижу Вот что это значит, но могу ли я использовать эту информацию для доступа к исходному коду и, предпочтительно, к номеру строки, вызывающей сбой?

0

Решение

Я предполагаю, что вы хотите мини-дамп (https://msdn.microsoft.com/en-us/library/windows/desktop/ms680369(v=vs.85).aspx). Это, вероятно, предоставит вам информацию, которую вы хотите.

0

Другие решения

Настройка отчетов об ошибках Windows (WER) генерировать дампы (работает с Windows Server 2008 RTM/Vista Sp1). Этот пример .reg-файла настраивает Windows для создания полных дампов памяти всех сбоев приложения и сохраняет их в C:\localdumps:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps]
"DumpFolder"=hex(2):43,00,3a,00,5c,00,4c,00,6f,00,63,00,61,00,6c,00,44,00,75,\
00,6d,00,70,00,73,00,00,00
"DumpType"=dword:00000002

Если вы хотите получить только дампы своего приложения, импортируйте этот файл .reg:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps\MyAPP.exe]
"DumpFolder"=hex(2):43,00,3a,00,5c,00,4c,00,6f,00,63,00,61,00,6c,00,44,00,75,\
00,6d,00,70,00,73,00,00,00
"DumpType"=dword:00000002

Измените MyAPP.exe на ваше реальное имя приложения.

Теперь откройте dmp в Windbg, настройте Доступ к серверу символов Microsoft в Windbg а также добавьте ваши частные PDB в путь поиска символов. Теперь беги .srcfix; !analyze -v и посмотрите, что Windbg скажет вам, где произошло сбой вашего приложения.

0