应用程序异常0xc0000005

d99cnx 2014-07-14 06:17:37
用c++11在windows下写http服务器,基于iocp机制,配合std::function+std::bind实现异步回掉,现在完成了%60,但是程序老是崩溃,用Windbg分析堆栈,只有一帧:
STACK_TEXT:
00000000 00000000 00000000 00000000 00000000 Nova!__ImageBase
已经5天了,被折腾残了,哪位大大可以帮我分析解决下,提供报酬也是可以的!企鹅1332666290

附调试信息:
*******************************************************************************
* *
* Exception Analysis *
* *
*******************************************************************************

Failed calling InternetOpenUrl, GLE=12029

FAULTING_IP:
Nova!__ImageBase+0
01300000 4d dec ebp

EXCEPTION_RECORD: ffffffff -- (.exr 0xffffffffffffffff)
ExceptionAddress: 01300000 (Nova!__ImageBase)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000008
Parameter[1]: 01300000
Attempt to execute non-executable address 01300000

PROCESS_NAME: Nova.exe

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

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

EXCEPTION_PARAMETER1: 00000008

EXCEPTION_PARAMETER2: 01300000

WRITE_ADDRESS: 01300000

FOLLOWUP_IP:
Nova!__ImageBase+0
01300000 4d dec ebp

MOD_LIST: <ANALYSIS/>

FAULTING_THREAD: 000002b4

BUGCHECK_STR: APPLICATION_FAULT_SOFTWARE_NX_FAULT_CODE

PRIMARY_PROBLEM_CLASS: SOFTWARE_NX_FAULT_CODE

DEFAULT_BUCKET_ID: SOFTWARE_NX_FAULT_CODE

LAST_CONTROL_TRANSFER: from 00000000 to 01300000

STACK_TEXT:
00000000 00000000 00000000 00000000 00000000 Nova!__ImageBase


STACK_COMMAND: ~0s; .ecxr ; kb

SYMBOL_STACK_INDEX: 0

SYMBOL_NAME: nova!__ImageBase

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: Nova

IMAGE_NAME: Nova.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 53c3a237

FAILURE_BUCKET_ID: SOFTWARE_NX_FAULT_CODE_c0000005_Nova.exe!__ImageBase

BUCKET_ID: APPLICATION_FAULT_SOFTWARE_NX_FAULT_CODE_nova!__ImageBase

WATSON_STAGEONE_URL: http://watson.microsoft.com/StageOne/Nova_exe/0_0_0_0/53c3a237/Nova_exe/0_0_0_0/53c3a237/c0000005/00000000.htm?Retriage=1

Followup: MachineOwner
---------
...全文
1125 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2014-07-15
  • 打赏
  • 举报
回复
崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处。

65,211

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧