Windows应用程序调试

Gom*_*shi 1 windows debugging freeze

我的操作组和开发人员对于为什么会发生这种情况一无所知.基本上,客户端/服务器应用程序的服务器端服务挂起.我们一直在推动新的bugfixed版本并向开发者提供各种日志,但他们无法弄明白.为了使其更难理解,这是一个与客户端上的另一个应用程序密切配合的应用程序.

我不知道我是否在这里做了什么,因为我的windbg经验有限,但这似乎值得一试.谷歌很有前途,但大多数游戏玩家都没有提供更多信息......

我在转储开始时发现了这一点:

警告:odbccp32与comctl32重叠.警告:odbc32重叠odbccp32警告:odbc32重叠comctl32 .............警告:mswsock重叠FWPUCLNT .......警告:winsta重叠winnsi.警告:ntlanman重叠drprov ....警告:srvcli重叠netapi32警告:wkscli重叠srvcli ..........警告:ncrypt重叠schannel.警告:nlaapi与ncrypt重叠.警告:NapiNSP重叠nlaapi ....警告:rsaenh重叠了cryptsp

而且有点低:

OVERLAPPED_MODULE:'odbc32'和'odbccp32'重叠的地址区域

这是完整的!analyze -v转储:

Microsoft (R) Windows Debugger Version 6.2.8400.0 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.


Loading Dump File [C:\debug\MES\PLSMES.dmp]
User Mini Dump File: Only registers, stack and portions of memory are available

Symbol search path is: srv*c:\symbols*c:\windows\symbols*http://msdl.microsoft.com/download/symbols
Executable search path is: 
Windows 7 Version 7601 (Service Pack 1) MP (16 procs) Free x64
Product: Server, suite: TerminalServer SingleUserTS
Machine Name:
Debug session time: Thu Jun 14 10:37:01.000 2012 (UTC + 2:00)
System Uptime: not available
Process Uptime: 0 days 6:36:13.000
......................................WARNING: odbccp32 overlaps comctl32
.WARNING: odbc32 overlaps odbccp32
WARNING: odbc32 overlaps comctl32
.............WARNING: mswsock overlaps FWPUCLNT
.......WARNING: winsta overlaps winnsi
.WARNING: ntlanman overlaps drprov
....
...WARNING: srvcli overlaps netapi32
.WARNING: wkscli overlaps srvcli
..........WARNING: ncrypt overlaps schannel
.WARNING: nlaapi overlaps ncrypt
.WARNING: NapiNSP overlaps nlaapi
....WARNING: rsaenh overlaps cryptsp

Cannot read PEB32 from WOW64 TEB32 7efdd000 - Win32 error 0n30
wow64cpu!CpupSyscallStub+0x9:
00000000`741f2e09 c3              ret
0:000> !analyze -v
*******************************************************************************
*                                                                             *
*                        Exception Analysis                                   *
*                                                                             *
*******************************************************************************

*** WARNING: Unable to verify timestamp for PLSMES.exe
*** ERROR: Module load completed but symbols could not be loaded for PLSMES.exe

FAULTING_IP: 
+0
00000000`00000000 ??              ???

EXCEPTION_RECORD:  ffffffffffffffff -- (.exr 0xffffffffffffffff)
ExceptionAddress: 0000000000000000
   ExceptionCode: 80000003 (Break instruction exception)
  ExceptionFlags: 00000000
NumberParameters: 0

FAULTING_THREAD:  0000000000001364

DEFAULT_BUCKET_ID:  BAD_DUMP_MISSING_MEMORY

PROCESS_NAME:  PLSMES.exe

OVERLAPPED_MODULE: Address regions for 'odbc32' and 'odbccp32' overlap

ERROR_CODE: (NTSTATUS) 0x80000003 - {EXCEPTION}  Breakpoint  A breakpoint has been reached.

EXCEPTION_CODE: (HRESULT) 0x80000003 (2147483651) - One or more arguments are invalid

NTGLOBALFLAG:  0

APPLICATION_VERIFIER_FLAGS:  0

APP:  plsmes.exe

ADDITIONAL_DEBUG_TEXT:  Followup set based on attribute [Is_ChosenCrashFollowupThread] from Frame:[0] on thread:[PSEUDO_THREAD]

LAST_CONTROL_TRANSFER:  from 0000000000000000 to 00000000741f2e09

PRIMARY_PROBLEM_CLASS:  BAD_DUMP_MISSING_MEMORY

BUGCHECK_STR:  APPLICATION_FAULT_BAD_DUMP_MISSING_MEMORY

STACK_TEXT:  
00000000`00000000 00000000`00000000 bad_dump!missing_stack+0x0


SYMBOL_STACK_INDEX:  0

SYMBOL_NAME:  bad_dump!missing_stack

FOLLOWUP_NAME:  MachineOwner

MODULE_NAME: bad_dump

IMAGE_NAME:  bad_dump

DEBUG_FLR_IMAGE_TIMESTAMP:  0

STACK_COMMAND:  ** Pseudo Context ** ; kb

FAILURE_BUCKET_ID:  BAD_DUMP_MISSING_MEMORY_80000003_bad_dump!missing_stack

BUCKET_ID:  X64_APPLICATION_FAULT_BAD_DUMP_MISSING_MEMORY_bad_dump!missing_stack

WATSON_STAGEONE_URL:  http://watson.microsoft.com/StageOne/PLSMES_exe/4_4_3_2582/4f8ac8f6/unknown/0_0_0_0/bbbbbbb4/80000003/00000000.htm?Retriage=1

Followup: MachineOwner
---------
Run Code Online (Sandbox Code Playgroud)

这可能与应用程序挂起有关吗?重叠的记忆似乎并不好.注意:同一服务器运行同一应用程序的其他实例且没有错误.

任何进一步调试的指针也会很好.

(从ServerFault移动,我想这里有更好的问题.)

Mar*_*man 5

我已经看到当64位版本的任务管理器用于创建32位进程的转储时会发生这种情况.如果是这种情况,请使用可在SysWOW64文件夹中找到的32位版本的任务管理器.此链接描述了该问题:http: //blogs.msdn.com/b/tess/archive/2010/09/29/capturing-memory-dumps-for-32-bit-processes-on-an-x64-machine. ASPX