Advanced Debugging
About AdvDbg Consult Train Services Products Tools Community Contact  
欢迎光临 高端调试 登录 | 注册 | FAQ
 
  ACPI调试
Linux内核调试
Windows内核调试
 
  调试战役
调试原理
新工具观察
 
  Linux
Windows Vista
Windows
 
  Linux驱动
WDF
WDM
 
  PCI Express
PCI/PCI-X
USB
无线通信协议
 
  64位CPU
ARM
IA-32
  CPU Info Center
 
  ACPI标准
系统认证
Desktop
服务器
 
  Embedded Linux
嵌入式开发工具
VxWorks
WinCE
嵌入式Windows
 
  格蠹调试套件(GDK)
  格蠹学院
  小朱书店
  老雷的微博
  《软件调试》
  《格蠹汇编》
  《软件调试(第二版)》
沪ICP备11027180号-1

C/C++本地代码调试

帖子发起人: david-zf   发起时间: 2014-01-09 11:38 上午   回复: 2

Print Search
帖子排序:    
   2014-01-09, 11:38 上午
david-zf 离线,最后访问时间: 2013/12/25 4:12:40 david-zf

发帖数前200位
注册: 2011-03-14
发 贴: 5
求助:请各位高手帮忙分析一个问题,多谢,已经2天了没有头绪啊
Reply Quote
公司在对软件进行稳定性测试的时候发现的问题,问题的具体表现如下:
1 运行2-3天后出现CMFCToolBarEditBoxButton中的Edit控件创建失败的情况,直接的表现是通过该类的GetEditBox获取的控件指针为空
2 每次都是如此,并不是所有测试机都出现这种情况,运行的操作系统为XP XP3和Win7 32位操作系统
3 一旦出现这种情况,系统就会出现异常,从堆栈来看,异常主要有三种表现:
(1)其他线程的出现堆异常(HeapFree的时候)
(2)其他线程出现eip寄存器值错误,导致系统出现问题
(3)本线程通过GetEditBox使用其指针时,出现访问违例(使用这个指针时没有判断指针的有效性)
下面是其中两个机器的异常堆栈的信息,还请高手给点思路,多谢
----------------------------------------------------------
第一个
FAULTING_IP:
+5af
000005af ?? ???

EXCEPTION_RECORD: ffffffff -- (.exr 0xffffffffffffffff)
ExceptionAddress: 000005af
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000000
Parameter[1]: 000005af
Attempt to read from address 000005af

FAULTING_THREAD: 00000df8

DEFAULT_BUCKET_ID: NULL_INSTRUCTION_PTR

ERROR_CODE: (NTSTATUS) 0xc0000005 - 0x%08lx

READ_ADDRESS: 000005af

FAILED_INSTRUCTION_ADDRESS:
+5af
000005af ?? ???

NTGLOBALFLAG: 0

APPLICATION_VERIFIER_FLAGS: 0

PRIMARY_PROBLEM_CLASS: NULL_INSTRUCTION_PTR

BUGCHECK_STR: APPLICATION_FAULT_NULL_INSTRUCTION_PTR

LAST_CONTROL_TRANSFER: from 714b378b to 000005af

STACK_TEXT:
WARNING: Frame IP not in any known module. Following frames may be wrong.
1329f110 714b378b 1329f16c 1329f148 714b5b89 0x5af
1329f11c 714b5b89 716bdf5c 9945080a 00000000 mfc90u!ATL::CSimpleStringT::CSimpleStringT+0x1e [f:\dd\vctools\vc7libs\ship\atlmfc\include\atlsimpstr.h @ 228]
1329f148 00e0b008 42b21eb4 1329f184 00e9a330 mfc90u!ATL::CStringT > >::CStringT > >+0x1b [f:\dd\vctools\vc7libs\ship\atlmfc\include\cstringt.h @ 900]
1329f178 00de4c16 42b21eb4 99450f1d 1329f11c kxScriptFunction!CxxArrayAccessService::GetArray+0x28 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\data\kxscriptfunction\arrayaccess\cxxarrayaccessservice.cpp @ 82]
1329f1d8 002ef864 42b21eb4 0000001c 99450ba7 kxScriptFunction!systemFun::GetArrayElement+0x46 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\data\kxscriptfunction\kxscriptfuncsystem.cpp @ 1125]
1329f240 002f0c1f 00de4bd0 40042360 00000002 kxObject!_kxCallStaticMethod+0x184 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\common\kxobject\kxdispcallfunc.cpp @ 130]
1329f2f4 002f483b 023c7a70 1329f45c 1329f41c kxObject!_kxStaticDispInvoke+0x2cf [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\common\kxobject\kxdispcallfunc.cpp @ 646]
1329f30c 006c9e59 1329f41c 1329f45c 99450a85 kxObject!CxxFunction::Invoke+0x1b [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\common\kxobject\cxxfunction.cpp @ 121]
1329f488 006c5ae1 20c57a98 00000005 99450ad1 kxScript!CVMInternal::InternalCall+0x5d9 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\common\kxscript\vminternal.h @ 3536]
1329f4dc 006dffd4 1329f548 99450b61 00000000 kxScript!CVMInternal::IL_Excute_IL_CALL+0x251 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\common\kxscript\vminternal.h @ 2173]
1329f56c 00701649 99450bbd 00000010 00000000 kxScript!CVMInternal::Excute_DirectMode+0x9d4 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\common\kxscript\il_codes.h @ 134]
1329f5b0 043c899b 0958fb58 4091cca4 00000000 kxScript!CxxScriptExecutor::Execute+0x129 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\common\kxscript\cxxscriptexecutor.cpp @ 113]
1329f600 043c9500 0958fb58 1329f684 1329f674 kxLogicRunner!CkxLogicRunService::ExecuteScript+0xcb [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\data\kxlogicrunner\ckxlogicrunservice.cpp @ 3865]
1329f6a0 043c9592 0230e1bc 0230e078 20008001 kxLogicRunner!CkxLogicRunService::ExecuteNormalScriptNoRtnValue+0x150 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\data\kxlogicrunner\ckxlogicrunservice.cpp @ 3230]
1329f6b4 043c9d9a 0230e1bc 00000000 00000000 kxLogicRunner!CkxLogicRunService::ExecuteScriptNoRtnValue+0x22 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\data\kxlogicrunner\ckxlogicrunservice.cpp @ 3167]
1329f6e0 044b819f 00000032 03b337f0 00000000 kxLogicRunner!CkxLogicRunService::ExecuteAppWhileScript+0x7a [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\data\kxlogicrunner\ckxlogicrunservice.cpp @ 812]
1329ff0c 044b8e41 9e8535b5 00000000 00000000 kxRealDB!CkxRealDB::ProcessTimingScript+0x11f [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\data\kxrealdb\ckxrealdb.cpp @ 7480]
1329ff44 71853433 03b337f0 994507b9 00000000 kxRealDB!CkxRealDB::RDBTimingExecuteScriptThreadProc+0x81 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\data\kxrealdb\ckxrealdb.cpp @ 7409]
1329ff7c 718534c7 00000000 1329ff94 76dced6c MSVCR90!_endthreadex+0x44
1329ff88 76dced6c 09874c88 1329ffd4 76fc377b MSVCR90!_endthreadex+0xd8
1329ff94 76fc377b 09874c88 50010505 00000000 kernel32!BaseThreadInitThunk+0xe
1329ffd4 76fc374e 7185345e 09874c88 00000000 ntdll!__RtlUserThreadStart+0x70
1329ffec 00000000 7185345e 09874c88 00000000 ntdll!_RtlUserThreadStart+0x1b


FOLLOWUP_IP:
mfc90u!ATL::CSimpleStringT::CSimpleStringT+1e [f:\dd\vctools\vc7libs\ship\atlmfc\include\atlsimpstr.h @ 228]
714b378b 83c010 add eax,10h

FAULTING_SOURCE_CODE:
No source found for 'f:\dd\vctools\vc7libs\ship\atlmfc\include\atlsimpstr.h'


SYMBOL_STACK_INDEX: 1

SYMBOL_NAME: mfc90u!ATL::CSimpleStringT::CSimpleStringT+1e

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: mfc90u

IMAGE_NAME: mfc90u.dll

DEBUG_FLR_IMAGE_TIMESTAMP: 4a596d4a

STACK_COMMAND: ~50s ; kb

FAILURE_BUCKET_ID: NULL_INSTRUCTION_PTR_c0000005_mfc90u.dll!ATL::CSimpleStringT::CSimpleStringT

BUCKET_ID: APPLICATION_FAULT_NULL_INSTRUCTION_PTR_BAD_IP_mfc90u!ATL::CSimpleStringT_wchar_t,1_::CSimpleStringT_wchar_t,1_+1e

Followup: MachineOwner
---------------------------------------------------------------------------
第二个
FAULTING_IP:
ntdll!RtlFreeHeap+3a
772c2c39 80780705 cmp byte ptr [eax+7],5

EXCEPTION_RECORD: ffffffff -- (.exr 0xffffffffffffffff)
ExceptionAddress: 772c2c39 (ntdll!RtlFreeHeap+0x0000003a)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000000
Parameter[1]: 48484847
Attempt to read from address 48484847

FAULTING_THREAD: 000002e8

ERROR_CODE: (NTSTATUS) 0xc0000005 - 0x%08lx

READ_ADDRESS: 48484847

NTGLOBALFLAG: 0

APPLICATION_VERIFIER_FLAGS: 0

ADDITIONAL_DEBUG_TEXT: Enable Pageheap/AutoVerifer

DEFAULT_BUCKET_ID: HEAP_CORRUPTION

PRIMARY_PROBLEM_CLASS: HEAP_CORRUPTION

BUGCHECK_STR: APPLICATION_FAULT_HEAP_CORRUPTION_STRING_DEREFERENCE

LAST_CONTROL_TRANSFER: from 7570c3d4 to 772c2c39

STACK_TEXT:
0012eb24 7570c3d4 131e0000 00000000 48484848 ntdll!RtlFreeHeap+0x3a
0012eb38 12f3f79a 131e0000 00000000 48484848 kernel32!HeapFree+0x14
WARNING: Stack unwind information not available. Following frames may be wrong.
0012eb74 12ecf477 48484848 02429e38 6c458b64 myodbc5!SQLPrepare+0x7e2b3
0012ebd4 6c4aa1a2 0141e620 0012ec20 02429e38 myodbc5!SQLPrepare+0xdf90
0012ebf8 6c500914 0141e620 0012ec20 64cc8981 ODBC32!SQLAllocStmt+0x5f
0012ec38 6c4eea97 12bb6050 12bb518c 00000000 msdasql!CODBCHandle::GetNewHstmt+0x104
0012ec64 6c4e5806 12bb6050 64cc8929 12bb7d50 msdasql!CCommand::FInit+0x77
0012ec90 6c585eb4 12ba4938 12bb5068 6c57b638 msdasql!CImpIDBCreateCommand::CreateCommand+0x316
0012ed14 6c585e03 12b94ee4 64c97c82 12b9aea4 msado15!CQuery::Bind+0x17a
0012ed64 6c586b07 0012ee08 64c97fd6 00000000 msado15!CCommand::GetBoundQuery+0x164
0012ee30 6c57ffe7 12b95008 12b9ae98 00000000 msado15!CCommand::SetConnection+0x21c
0012ee64 6c589e6e ffffffff 12b94ed8 00000000 msado15!CCommand::putref_ActiveConnection+0x73
0012ee88 6c589d86 12b94ed8 3a334854 00000000 msado15!CreateCommand+0x92
0012eee8 6c585c17 00000001 00000000 3a334608 msado15!CRecordset::_Open+0x444
0012f148 6ed459c9 00334608 00000008 00000000 msado15!CRecordset::Open+0xfe4
0012f184 6ed44a1d 6157ff06 0012f370 3d578498 kxDBAccess!Recordset15::Open+0x49 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\build\kxkingdbaccess\release\msado15.tli @ 1581]
0012f200 6ed49769 0012f370 6157ff6e 03b2c0ac kxDBAccess!CkxKingDatabase::GetRecordset+0xed [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\data\kxkingdbaccess\ckxkingdatabase.cpp @ 1037]
0012f2d0 6ed4f3c0 0012f370 3d578498 03b74fb8 kxDBAccess!CkxKingRecordset::FillRecordset+0x69 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\data\kxkingdbaccess\ckxkingrecordset.cpp @ 229]
0012f308 00df0b62 0012f3b0 0012f370 0012f390 kxDBAccess!CkxKingRecordsetManager::RSFillRecordset1+0xa0 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\data\kxkingdbaccess\ckxkingrecordsetmanager.cpp @ 281]
0012f400 005df864 4323b6f4 4396e374 2da29f14 kxScriptFunction!DBAccess::KDBGetDataset1+0x292 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\data\kxscriptfunction\kxscriptfuncdbaccess.cpp @ 1075]
0012f46c 005e0c1f 00df08d0 403a8c88 00000003 kxObject!_kxCallStaticMethod+0x184 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\common\kxobject\kxdispcallfunc.cpp @ 130]
0012f520 005e483b 023d8130 0012f688 0012f648 kxObject!_kxStaticDispInvoke+0x2cf [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\common\kxobject\kxdispcallfunc.cpp @ 646]
0012f538 00929e59 0012f648 0012f688 6157fad8 kxObject!CxxFunction::Invoke+0x1b [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\common\kxobject\cxxfunction.cpp @ 121]
0012f6b4 00925ae1 4289cea8 00000001 6157fb64 kxScript!CVMInternal::InternalCall+0x5d9 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\common\kxscript\vminternal.h @ 3536]
0012f708 0093ffd4 0012f774 6157fbf4 03b74fb8 kxScript!CVMInternal::IL_Excute_IL_CALL+0x251 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\common\kxscript\vminternal.h @ 2173]
0012f798 00961649 6157fbb0 00000010 00000000 kxScript!CVMInternal::Excute_DirectMode+0x9d4 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\common\kxscript\il_codes.h @ 134]
0012f7dc 00a43b74 37a70e78 3fa1023c 00000000 kxScript!CxxScriptExecutor::Execute+0x129 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\common\kxscript\cxxscriptexecutor.cpp @ 113]
0012f8c0 0076260f 40320920 0012f918 40320920 kxPictureEngine!CkxScriptTriggerLinkDriver::OnExecuteTrigger+0x314 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\view\kxpictureengine\linkengine\ckxscripttriggerlinkdriver.cpp @ 169]
0012f8d4 00372e6c 0012f918 6157f473 2926bc68 kxGraphy!NkxGraphy::Link::CkxScriptTriggerLink::OnTrigger+0x3f [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\view\kxgraphy\link\ckxscripttriggerlink.cpp @ 202]
0012f948 0037adf3 6157f707 016bae14 76ed4f19 kxPictureView!CxxRunViewContainer::OnOpenPicture+0x12c [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\view\kxpictureview\cxxrunviewcontainer.cpp @ 1656]
0012fa3c 00387d76 21ed8780 03b755c0 03b67040 kxPictureView!CxxPictureViewWnd::SetPictureContext+0x3f3 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\view\kxpictureview\cxxpictureviewwnd.cpp @ 1161]
0012fb1c 00387e45 09cf2008 03b71df8 03b74f90 kxPictureView!CxxPictureViewer::_CreatePictureWnd+0x3d6 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\view\kxpictureview\cxxpictureviewer.cpp @ 1373]
0012fb64 0037c963 429b6dd0 00000000 03b74fb8 kxPictureView!CxxPictureViewer::ShowPictureWindow+0x85 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\view\kxpictureview\cxxpictureviewer.cpp @ 711]
0012fba8 0037ce40 429b6dd0 00000000 03b74fb8 kxPictureView!CxxPictureViewerWnd::ProcessPictureOperation+0x93 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\view\kxpictureview\cxxpictureviewerwnd.cpp @ 458]
0012fbc4 7169f97c 00000000 429b6dd0 6157f76f kxPictureView!CxxPictureViewerWnd::OnPictureOperation+0x30 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\view\kxpictureview\cxxpictureviewerwnd.cpp @ 600]
0012fc70 7169f6ce 000005f5 00000000 429b6dd0 mfc90u!CWnd::OnWndMsg+0x287 [f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\wincore.cpp @ 1897]
0012fc90 7169e2f4 000005f5 00000000 429b6dd0 mfc90u!CWnd::WindowProc+0x24 [f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\wincore.cpp @ 1755]
0012fcf8 7169e580 00000000 026b04d0 000005f5 mfc90u!AfxCallWndProc+0xa3 [f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\wincore.cpp @ 240]
0012fd1c 7169c247 026b04d0 000005f5 00000000 mfc90u!AfxWndProc+0x37 [f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\wincore.cpp @ 402]
0012fd64 76edc4e7 026b04d0 000005f5 00000000 mfc90u!AfxWndProcBase+0x56 [f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\afxstate.cpp @ 441]
0012fd90 76edc5e7 7169c1f1 026b04d0 000005f5 USER32!InternalCallWinProc+0x23
0012fe08 76edcc19 00283cb4 7169c1f1 026b04d0 USER32!UserCallWinProcCheckWow+0x14b
0012fe68 76edcc70 7169c1f1 00000000 0012fea8 USER32!DispatchMessageWorker+0x35e
0012fe78 716de3c0 00289b28 00000000 004aa208 USER32!DispatchMessageW+0xf
0012fe88 716dea47 004ab108 00000001 00000000 mfc90u!AfxInternalPumpMessage+0x40 [f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\thrdcore.cpp @ 183]
0012fea8 0046bec8 615c4554 004ab108 00000001 mfc90u!CWinThread::Run+0x5b [f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\thrdcore.cpp @ 629]
0012fef4 0043abb9 00400000 00000000 002617ba SCADAView!AfxWinMain+0xf8 [e:\ks31.00.00000(app)\¿Í»§\³¤ÇìÓÍÌï\20130530\ÍŶÓ\08ÖÊÁ¿\01´úÂë\source\data\touchview\winmain.cpp @ 58]
0012ff88 7570ed6c 7ffdf000 0012ffd4 772d377b SCADAView!__tmainCRTStartup+0x150 [f:\dd\vctools\crt_bld\self_x86\crt\src\crtexe.c @ 578]
0012ff94 772d377b 7ffdf000 45dd567b 00000000 kernel32!BaseThreadInitThunk+0xe
0012ffd4 772d374e 0043ad87 7ffdf000 00000000 ntdll!__RtlUserThreadStart+0x70
0012ffec 00000000 0043ad87 7ffdf000 00000000 ntdll!_RtlUserThreadStart+0x1b


SYMBOL_NAME: heap_corruption!heap_corruption

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: heap_corruption

IMAGE_NAME: heap_corruption

DEBUG_FLR_IMAGE_TIMESTAMP: 0

STACK_COMMAND: ~0s ; kb

FAILURE_BUCKET_ID: HEAP_CORRUPTION_c0000005_heap_corruption!heap_corruption

BUCKET_ID: APPLICATION_FAULT_HEAP_CORRUPTION_STRING_DEREFERENCE_heap_corruption!heap_corruption

Followup: MachineOwner

IP 地址: 已记录   报告
   2014-01-09, 12:41 下午
Raymond 离线,最后访问时间: 2020/7/3 3:40:25 格蠹老雷

发帖数前10位
注册: 2005-12-19
发 贴: 1,303
Re: 求助:请各位高手帮忙分析一个问题,多谢,已经2天了没有头绪啊
Reply Quote
堆腐败,某个代码将堆上的链表结构破坏了,后面再使用堆时就促发问题了。

WinDBG自动给出建议非常有价值,Enable Pageheap/AutoVerifer

稍微简短了点,解释下,两种方法:
1)使用gflags或者WinDBG手工启用页堆,然后再运行程序,捕捉破坏堆的那个操作
2)下载和安装App Verifier,然后让这个工具帮助启用,稍微简单点


IP 地址: 已记录   报告
   2014-01-09, 14:02 下午
david-zf 离线,最后访问时间: 2013/12/25 4:12:40 david-zf

发帖数前200位
注册: 2011-03-14
发 贴: 5
Re: 求助:请各位高手帮忙分析一个问题,多谢,已经2天了没有头绪啊
Reply Quote
多谢张老师的建议
启动页堆的方法尝试过,Full页堆无法使用,因为内存消耗的问题,只能使用标准页堆,但不知道标准页堆的效果如何。
另外还有一个问题,我发的问题中有两个堆栈,后面一个堆栈是堆破坏,但前一个不是,感觉似乎是栈的问题,不知堆的问题是否能够导致栈破坏?
IP 地址: 已记录   报告
高端调试 » 软件调试 » C/C++本地代码调试 » 求助:请各位高手帮忙分析一个问题,多谢,已经2天了没有头绪啊

 
Legal Notice Privacy Statement Corporate Governance Corporate Governance
(C)2004-2020 ADVDBG.ORG All Rights Reserved.