一个windows系统服务,DCMServer,长时间没反应,貌似挂起了。学着用windbg dump了一些信息,不知道怎么看。我是新手,请给我些详细的步骤,如果需要进一步信息,我马上会跟帖的,实在是急啊!!!Opened log file 'c:\tmp\dcmu\log\dump.log'
0:001> !peb
PEB at 7efde000
    InheritedAddressSpace:    No
    ReadImageFileExecOptions: No
    BeingDebugged:            Yes
    ImageBaseAddress:         00400000
    Ldr                       7d6a01e0
    Ldr.Initialized:          Yes
    Ldr.InInitializationOrderModuleList: 002e1f18 . 002fd950
    Ldr.InLoadOrderModuleList:           002e1eb0 . 002fdb88
    Ldr.InMemoryOrderModuleList:         002e1eb8 . 002fdb90
            Base TimeStamp                     Module
          400000 4a51a7e4 Jul 06 15:29:40 2009 C:\DCMServer.exe
        7d600000 45d709ff Feb 17 21:58:23 2007 C:\WINDOWS\system32\ntdll.dll
        7d4c0000 45d70a00 Feb 17 21:58:24 2007 C:\WINDOWS\syswow64\kernel32.dll
        7da20000 45d709fe Feb 17 21:58:22 2007 C:\WINDOWS\syswow64\RPCRT4.dll
          500000 45d70a26 Feb 17 21:59:02 2007 C:\WINDOWS\syswow64\ADVAPI32.dll
        7d8d0000 45d709ff Feb 17 21:58:23 2007 C:\WINDOWS\syswow64\Secur32.dll
        7d930000 45d709ff Feb 17 21:58:23 2007 C:\WINDOWS\syswow64\USER32.dll
        7d800000 45d709fe Feb 17 21:58:22 2007 C:\WINDOWS\syswow64\GDI32.dll
        7c8d0000 45d70abb Feb 17 22:01:31 2007 C:\WINDOWS\syswow64\SHELL32.dll
        77ba0000 45d70b06 Feb 17 22:02:46 2007 C:\WINDOWS\syswow64\msvcrt.dll
          5a0000 45d70ac0 Feb 17 22:01:36 2007 C:\WINDOWS\syswow64\SHLWAPI.dll
        77670000 45d70aa5 Feb 17 22:01:09 2007 C:\WINDOWS\syswow64\ole32.dll
          600000 45d70aa6 Feb 17 22:01:10 2007 C:\WINDOWS\syswow64\OLEAUT32.dll
        7c630000 45712356 Dec 02 14:55:18 2006 C:\WINDOWS\WinSxS\x86_Microsoft.VC80.ATL_1fc8b3b9a1e18e3b_8.0.50727.762_x-ww_CBB27474\ATL80.DLL
        7c420000 457122c8 Dec 02 14:52:56 2006 C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.762_x-ww_6B128700\MSVCP80.dll
        78130000 45712238 Dec 02 14:50:32 2006 C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.762_x-ww_6B128700\MSVCR80.dll
        76920000 45d70ac8 Feb 17 22:01:44 2007 C:\WINDOWS\system32\USERENV.dll
        7dbd0000 45d709fd Feb 17 21:58:21 2007 C:\WINDOWS\WinSxS\WOW64_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.3790.3959_x-ww_5FA17F4E\comctl32.dll
          e50000 45d69418 Feb 17 13:35:20 2007 C:\WINDOWS\system32\xpsp2res.dll
        777b0000 45d70a3b Feb 17 21:59:23 2007 C:\WINDOWS\system32\CLBCatQ.DLL
        77010000 45d70a76 Feb 17 22:00:22 2007 C:\WINDOWS\system32\COMRes.dll
        77b90000 424377d6 Mar 25 10:30:46 2005 C:\WINDOWS\syswow64\VERSION.dll
        74cf0000 424377e5 Mar 25 10:31:01 2005 C:\WINDOWS\SysWOW64\wbem\wbemprox.dll
        750f0000 45d70ad3 Feb 17 22:01:55 2007 C:\WINDOWS\SysWOW64\wbem\wbemcomn.dll
        71c00000 45d70ae9 Feb 17 22:02:17 2007 C:\WINDOWS\system32\WS2_32.dll
        71bf0000 424377ee Mar 25 10:31:10 2005 C:\WINDOWS\system32\WS2HELP.dll
        74ce0000 3e8024a8 Mar 25 17:43:04 2003 C:\WINDOWS\SysWOW64\wbem\wbemsvc.dll
        75550000 45d70a3a Feb 17 21:59:22 2007 C:\WINDOWS\SysWOW64\wbem\fastprox.dll
         1540000 42435e42 Mar 25 08:41:38 2005 C:\WINDOWS\system32\msvcp60.dll
        766f0000 45d70a9f Feb 17 22:01:03 2007 C:\WINDOWS\system32\NTDSAPI.dll
        76ed0000 45d70a64 Feb 17 22:00:04 2007 C:\WINDOWS\system32\DNSAPI.dll
        76f10000 45d70ad5 Feb 17 22:01:57 2007 C:\WINDOWS\syswow64\WLDAP32.dll
        71c40000 45d70a82 Feb 17 22:00:34 2007 C:\WINDOWS\syswow64\NETAPI32.dll
    SubSystemData:     00000000
    ProcessHeap:       002e0000
    ProcessParameters: 001d0000
    WindowTitle:  'C:\DCMServer.exe'
    ImageFile:    'C:\DCMServer.exe'
    CommandLine:  '"C:\DCMServer.exe"'
    DllPath:      'C:\;C:\WINDOWS\system32;C:\WINDOWS\system;C:\WINDOWS;.;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem'
    Environment:  00010000
        ALLUSERSPROFILE=C:\Documents and Settings\All Users
        ClusterLog=C:\WINDOWS\Cluster\cluster.log
        CommonProgramFiles=C:\Program Files (x86)\Common Files
        CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
        CommonProgramW6432=C:\Program Files\Common Files
        COMPUTERNAME=ADMINISTRATOR6
        ComSpec=C:\WINDOWS\system32\cmd.exe
        FP_NO_HOST_CHECK=NO
        NUMBER_OF_PROCESSORS=12
        OS=Windows_NT
        Path=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem
        PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
        PROCESSOR_ARCHITECTURE=x86
        PROCESSOR_ARCHITEW6432=AMD64
        PROCESSOR_IDENTIFIER=AMD64 Family 16 Model 8 Stepping 0, AuthenticAMD
        PROCESSOR_LEVEL=16
        PROCESSOR_REVISION=0800
        ProgramFiles=C:\Program Files (x86)
        ProgramFiles(x86)=C:\Program Files (x86)
        ProgramW6432=C:\Program Files
        SystemDrive=C:
        SystemRoot=C:\WINDOWS
        TEMP=C:\WINDOWS\TEMP
        TMP=C:\WINDOWS\TEMP
        USERPROFILE=C:\Documents and Settings\Default User
        windir=C:\WINDOWS

解决方案 »

  1.   

    0:001> ~
       0  Id: b48.acc Suspend: 1 Teb: 7efdd000 Unfrozen
    .  1  Id: b48.bb0 Suspend: 1 Teb: 7efd7000 Unfrozen
       2  Id: b48.918 Suspend: 1 Teb: 7efaf000 Unfrozen
       3  Id: b48.828 Suspend: 1 Teb: 7efac000 Unfrozen
       4  Id: b48.17c Suspend: 1 Teb: 7efda000 Unfrozen
    #  5  Id: b48.a98 Suspend: 1 Teb: 7efa9000 Unfrozen
    0:001> ~0s kv
    eax=00000000 ebx=00000000 ecx=00000000 edx=00000000 esi=002e7eb8 edi=002dfaa4
    eip=7d61c858 esp=002df974 ebp=002df9d8 iopl=0         nv up ei pl nz na po nc
    cs=0023  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00000202
    ntdll!NtReadFile+0x15:
    7d61c858 c22400          ret     24h
               ^ Extra character error in '~0s kv'
    0:000> ~
    .  0  Id: b48.acc Suspend: 1 Teb: 7efdd000 Unfrozen
       1  Id: b48.bb0 Suspend: 1 Teb: 7efd7000 Unfrozen
       2  Id: b48.918 Suspend: 1 Teb: 7efaf000 Unfrozen
       3  Id: b48.828 Suspend: 1 Teb: 7efac000 Unfrozen
       4  Id: b48.17c Suspend: 1 Teb: 7efda000 Unfrozen
    #  5  Id: b48.a98 Suspend: 1 Teb: 7efa9000 Unfrozen
    0:000> kv
    ChildEBP RetAddr  Args to Child              
    002df970 7d4d08a8 000000c4 00000000 00000000 ntdll!NtReadFile+0x15 (FPO: [9,0,0])
    002df9d8 00515edb 000000c4 002dfaa4 0000021a kernel32!ReadFile+0x16c (FPO: [Non-Fpo])
    002dfa04 00515f82 000000c4 002dfaa4 0000021a ADVAPI32!ScGetPipeInput+0x2a (FPO: [Non-Fpo])
    002dfa78 00501ed9 000000c4 002dfaa4 0000021a ADVAPI32!ScDispatcherLoop+0x51 (FPO: [Non-Fpo])
    002dfcdc 0040e6b6 002dfd08 00000000 0043afe4 ADVAPI32!StartServiceCtrlDispatcherW+0xe3 (FPO: [Non-Fpo])
    002dff20 0040e7a0 0000000a 00000000 0042607b DCMServer!ATL::CAtlServiceModuleT<CDCMServerModule,101>::Start+0xd6 (FPO: [Non-Fpo]) (CONV: thiscall) [c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlbase.h @ 3621]
    002dff2c 0042607b 00400000 00000000 001d06f4 DCMServer!wWinMain+0x40 (FPO: [Non-Fpo]) (CONV: stdcall) [*c:\tmp\dcmu_win\src\server\dcmserver\release\dcmserver.inj:5 @ 14]
    002dffc0 7d4e7d2a 00000000 00000000 7efdf000 DCMServer!__tmainCRTStartup+0x150 (FPO: [Non-Fpo]) (CONV: cdecl) [f:\rtm\vctools\crt_bld\self_x86\crt\src\crtexe.c @ 578]
    002dfff0 00000000 004261eb 00000000 000000c8 kernel32!BaseProcessStart+0x28 (FPO: [Non-Fpo])
    0:000> ~1s
    eax=00000000 ebx=7d9477e1 ecx=00000000 edx=00000000 esi=00e0ff68 edi=7d9477f9
    eip=7d947880 esp=00e0ff2c ebp=00e0ff44 iopl=0         nv up ei pl nz na po nc
    cs=0023  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00000202
    USER32!NtUserGetMessage+0x15:
    7d947880 c21000          ret     10h
    0:001> kv
    ChildEBP RetAddr  Args to Child              
    00e0ff44 0040c21b 00e0ff68 00000000 00000000 USER32!NtUserGetMessage+0x15
    00e0ff80 0040e47c 0043a71c 0043a4d8 0040e582 DCMServer!ATL::CAtlExeModuleT<CDCMServerModule>::RunMessageLoop+0x4b (FPO: [Non-Fpo]) (CONV: thiscall) [c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlbase.h @ 3504]
    00e0ff8c 0040e582 00000000 00e0ffb8 00000000 DCMServer!ATL::CAtlServiceModuleT<CDCMServerModule,101>::Run+0x6c (FPO: [Non-Fpo]) (CONV: thiscall) [c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlbase.h @ 3779]
    00e0ffa4 00515e91 00000001 002e6d4c 00000000 DCMServer!ATL::CAtlServiceModuleT<CDCMServerModule,101>::ServiceMain+0xb2 (FPO: [Non-Fpo]) (CONV: thiscall) [c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlbase.h @ 3751]
    00e0ffb8 7d4dfe21 002e6d40 00000000 00000000 ADVAPI32!ScSvcctrlThreadW+0x21 (FPO: [Non-Fpo])
    00e0ffec 00000000 00515e70 002e6d40 00000000 kernel32!BaseThreadStart+0x34 (FPO: [Non-Fpo])
    0:001> ~2s
    eax=00000102 ebx=002f1c98 ecx=00000000 edx=00000000 esi=002f1a58 edi=00000000
    eip=7d61cbcd esp=0124fd20 ebp=0124ff84 iopl=0         nv up ei pl nz na po nc
    cs=0023  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00000202
    ntdll!NtReplyWaitReceivePortEx+0x12:
    7d61cbcd c21400          ret     14h
    0:002> kv
    ChildEBP RetAddr  Args to Child              
    0124fd1c 7da3da80 00000194 0124ff74 00000000 ntdll!NtReplyWaitReceivePortEx+0x12 (FPO: [5,0,0])
    0124ff84 7da45eac 0124ffac 7da45dd0 002f1a58 RPCRT4!LRPC_ADDRESS::ReceiveLotsaCalls+0x198 (FPO: [Non-Fpo])
    0124ff8c 7da45dd0 002f1a58 00000000 00000000 RPCRT4!RecvLotsaCallsWrapper+0xd (FPO: [Non-Fpo])
    0124ffac 7da45e94 002ec6c8 0124ffec 7d4dfe21 RPCRT4!BaseCachedThreadRoutine+0x9d (FPO: [Non-Fpo])
    0124ffb8 7d4dfe21 002f1c98 00000000 00000000 RPCRT4!ThreadStartRoutine+0x1b (FPO: [Non-Fpo])
    0124ffec 00000000 7da45e79 002f1c98 00000000 kernel32!BaseThreadStart+0x34 (FPO: [Non-Fpo])
    0:002> ~3s
    eax=00000000 ebx=00000000 ecx=00000000 edx=00000000 esi=00ab63b4 edi=00000000
    eip=7d61c828 esp=013bf388 ebp=013bf3c0 iopl=0         nv up ei pl nz na po nc
    cs=0023  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00000202
    ntdll!ZwWaitForSingleObject+0x15:
    7d61c828 c20c00          ret     0Ch
    0:003> kv
    ChildEBP RetAddr  Args to Child              
    013bf384 7d628678 0000022c 00000000 00000000 ntdll!ZwWaitForSingleObject+0x15 (FPO: [3,0,0])
    013bf3c0 7d628576 0000022c 00000004 00ab742c ntdll!RtlpWaitOnCriticalSection+0x1a3 (FPO: [Non-Fpo])
    013bf3e0 00410e57 00ab63b4 5b0255fe 8007000e ntdll!RtlEnterCriticalSection+0xa8 (FPO: [Non-Fpo])
    013bf410 00410f88 00000000 00412f11 00000000 DCMServer!CDCMService::CDCMService+0x67 (FPO: [Non-Fpo]) (CONV: thiscall) [c:\tmp\dcmu_win\src\server\dcmserver\dcmservice.h @ 81]
    013bf418 00412f11 00000000 5b02524a 0030dbe0 DCMServer!ATL::CComObject<CDCMService>::CComObject<CDCMService>+0x8 (FPO: [Non-Fpo]) (CONV: thiscall) [c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlcom.h @ 2558]
    013bf444 00401c20 00000000 0030c1f8 8007000e DCMServer!ATL::CComCreator<ATL::CComObject<CDCMService> >::CreateInstance+0x71 (FPO: [Non-Fpo]) (CONV: stdcall) [c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlcom.h @ 1792]
    013bf454 7778b71c 00ab60f8 00000000 0030c1f8 DCMServer!ATL::CComClassFactory::CreateInstance+0x50 (FPO: [Non-Fpo]) (CONV: stdcall) [c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlcom.h @ 3295]
    013bf474 776a374e 00ab60f8 0030c1f8 0030dcc0 ole32!IClassFactory_CreateInstance_Stub+0x19 (FPO: [Non-Fpo])
    013bf48c 7dac0dd9 013bf4c4 002fca98 0030dbe0 ole32!IClassFactory_RemoteCreateInstance_Thunk+0x25 (FPO: [Non-Fpo])
    013bf884 7dac0862 002fca98 002fe5ec 0030dbe0 RPCRT4!NdrStubCall2+0x214 (FPO: [Non-Fpo])
    013bf8dc 7778d01b 002fca98 0030dbe0 002fe5ec RPCRT4!CStdStubBuffer_Invoke+0xc6 (FPO: [Non-Fpo])
    013bf920 7778cfc8 0030dbe0 0030eb58 002fbd38 ole32!SyncStubInvoke+0x37 (FPO: [Non-Fpo])
    013bf968 776c120b 0030dbe0 0030ea58 002fca98 ole32!StubInvoke+0xa7 (FPO: [Non-Fpo])
    013bfa44 776c0bf5 002fe5ec 00000000 002fca98 ole32!CCtxComChnl::ContextInvoke+0xec (FPO: [Non-Fpo])
    013bfa60 7778d2a7 0030dbe0 00000001 002fca98 ole32!MTAInvoke+0x1a (FPO: [Non-Fpo])
    013bfa90 7778cd66 d0908070 002fe5ec 002fca98 ole32!AppInvoke+0xa3 (FPO: [Non-Fpo])
    013bfb64 7778d2c6 0030db88 002f2a90 0030eb40 ole32!ComInvokeWithLockAndIPID+0x2c5 (FPO: [Non-Fpo])
    013bfbb0 7da4d03d 0030db14 0030eb40 0030db14 ole32!ThreadInvoke+0x2e3 (FPO: [Non-Fpo])
    013bfbe4 7da4d177 7778d238 0030db14 013bfcec RPCRT4!DispatchToStubInCNoAvrf+0x38 (FPO: [Non-Fpo])
    013bfc38 7da4d812 00000000 00000000 7767bfc8 RPCRT4!RPC_INTERFACE::DispatchToStubWorker+0x11f (FPO: [Non-Fpo])
    0:003> ~4s
    eax=00000102 ebx=0030dce0 ecx=00000000 edx=00000000 esi=002f1a58 edi=00000000
    eip=7d61cbcd esp=016efd20 ebp=016eff84 iopl=0         nv up ei pl nz na po nc
    cs=0023  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00000202
    ntdll!NtReplyWaitReceivePortEx+0x12:
    7d61cbcd c21400          ret     14h
    0:004> kv
    ChildEBP RetAddr  Args to Child              
    016efd1c 7da3da80 00000194 016eff74 00000000 ntdll!NtReplyWaitReceivePortEx+0x12 (FPO: [5,0,0])
    016eff84 7da45eac 016effac 7da45dd0 002f1a58 RPCRT4!LRPC_ADDRESS::ReceiveLotsaCalls+0x198 (FPO: [Non-Fpo])
    016eff8c 7da45dd0 002f1a58 00000000 00000000 RPCRT4!RecvLotsaCallsWrapper+0xd (FPO: [Non-Fpo])
    016effac 7da45e94 002ec6c8 016effec 7d4dfe21 RPCRT4!BaseCachedThreadRoutine+0x9d (FPO: [Non-Fpo])
    016effb8 7d4dfe21 0030dce0 00000000 00000000 RPCRT4!ThreadStartRoutine+0x1b (FPO: [Non-Fpo])
    016effec 00000000 7da45e79 0030dce0 00000000 kernel32!BaseThreadStart+0x34 (FPO: [Non-Fpo])
    0:004> ~5s
    eax=7efde000 ebx=00000001 ecx=00000000 edx=00000000 esi=00000000 edi=00000000
    eip=7d61002d esp=00c1ffcc ebp=00c1fff4 iopl=0         nv up ei pl zr na pe nc
    cs=0023  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00000244
    ntdll!DbgBreakPoint:
    7d61002d cc              int     3
    0:005> kv
    ChildEBP RetAddr  Args to Child              
    00c1ffc8 7d665081 00000000 00000000 00000001 ntdll!DbgBreakPoint (FPO: [0,0,0])
    00c1fff4 00000000 00000000 00000000 00000000 ntdll!DbgUiRemoteBreakin+0x2d (FPO: [Non-Fpo])
      

  2.   

    0:005> !locksCritSec +ab63b4 at 00ab63b4
    WaiterWoken        No
    LockCount          1
    RecursionCount     1
    OwningThread       bb0
    EntryCount         0
    ContentionCount    1
    *** LockedScanned 289 critical sections
    0:005> !critsec 00ab63b4 CritSec +ab63b4 at 00ab63b4
    WaiterWoken        No
    LockCount          1
    RecursionCount     1
    OwningThread       bb0
    EntryCount         0
    ContentionCount    1
    *** Locked
    0:005> !handle
    Handle 4
      Type          KeyedEvent
    Handle 8
      Type          Event
    Handle c
      Type          Directory
    Handle 10
      Type          Directory
    Handle 14
      Type          Semaphore
    Handle 18
      Type          Semaphore
    Handle 1c
      Type          File
    Handle 20
      Type          KeyedEvent
    Handle 24
      Type          Event
    Handle 28
      Type          Directory
    Handle 2c
      Type          Semaphore
    Handle 30
      Type          Semaphore
    Handle 34
      Type          File
    Handle 38
      Type          File
    Handle 3c
      Type          Port
    Handle 40
      Type          Key
    Handle 44
      Type          File
    Handle 48
      Type          Key
    Handle 4c
      Type          Key
    Handle 50
      Type          Event
    Handle 54
      Type          Semaphore
    Handle 58
      Type          Semaphore
    Handle 5c
      Type          Semaphore
    Handle 60
      Type          Semaphore
    Handle 64
      Type          Semaphore
    Handle 68
      Type          Semaphore
    Handle 6c
      Type          Semaphore
    Handle 70
      Type          Semaphore
    Handle 74
      Type          Event
    Handle 78
      Type          WindowStation
    Handle 7c
      Type          Desktop
    Handle 80
      Type          WindowStation
    Handle 84
      Type          Directory
    Handle 88
      Type          Semaphore
    Handle 8c
      Type          File
    Handle 90
      Type          File
    Handle 94
      Type          File
    Handle 98
      Type          Event
    Handle 9c
      Type          WmiGuid
    Handle a0
      Type          Event
    Handle a4
      Type          Process
    Handle a8
      Type          Event
    Handle ac
      Type          Event
    Handle b0
      Type          File
    Handle b4
      Type          Event
    Handle b8
      Type          Key
    Handle bc
      Type          Key
    Handle c0
      Type          Key
    Handle c4
      Type          File
    Handle c8
      Type          Event
    Handle cc
      Type          Event
    Handle d0
      Type          Event
    Handle d4
      Type          Event
    Handle d8
      Type          Thread
    Handle dc
      Type          Event
    Handle e0
      Type          Port
    Handle e4
      Type          Event
    Handle e8
      Type          Thread
    Handle ec
      Type          Event
    Handle f0
      Type          Key
    Handle f4
      Type          Event
    Handle f8
      Type          Event
    Handle fc
      Type          Port
    Handle 100
      Type          IoCompletion
    Handle 104
      Type          Key
    Handle 108
      Type          IoCompletion
    Handle 10c
      Type          IoCompletion
    Handle 110
      Type          IoCompletion
    Handle 114
      Type          IoCompletion
    Handle 118
      Type          IoCompletion
    Handle 11c
      Type          IoCompletion
    Handle 120
      Type          IoCompletion
    Handle 124
      Type          IoCompletion
    Handle 128
      Type          IoCompletion
    Handle 12c
      Type          IoCompletion
    Handle 130
      Type          IoCompletion
    Handle 134
      Type          IoCompletion
    Handle 138
      Type          IoCompletion
    Handle 13c
      Type          IoCompletion
    Handle 140
      Type          IoCompletion
    Handle 144
      Type          IoCompletion
    Handle 148
      Type          IoCompletion
    Handle 14c
      Type          IoCompletion
    Handle 150
      Type          IoCompletion
    Handle 154
      Type          IoCompletion
    Handle 158
      Type          IoCompletion
    Handle 15c
      Type          IoCompletion
    Handle 160
      Type          IoCompletion
    Handle 164
      Type          IoCompletion
    Handle 168
      Type          Key
    Handle 16c
      Type          Event
    Handle 170
      Type          Event
    Handle 174
      Type          Key
    Handle 178
      Type          Event
    Handle 17c
      Type          Key
    Handle 180
      Type          Event
    Handle 184
      Type          File
    Handle 188
      Type          Section
    Handle 18c
      Type          Section
    Handle 190
      Type          Key
    Handle 194
      Type          Port
    Handle 198
      Type          Event
    Handle 19c
      Type          Thread
    Handle 1a0
      Type          Event
    Handle 1a4
      Type          Token
    Handle 1a8
      Type          Port
    Handle 1ac
      Type          Key
    Handle 1b0
      Type          Key
    Handle 1b4
      Type          Key
    Handle 1b8
      Type          Key
    Handle 1bc
      Type          Key
    Handle 1c0
      Type          Key
    Handle 1c4
      Type          Key
    Handle 1c8
      Type          Key
    Handle 1cc
      Type          Key
    Handle 1d0
      Type          Key
    Handle 1d4
      Type          Key
    Handle 1d8
      Type          Key
    Handle 1dc
      Type          Port
    Handle 1e0
      Type          Event
    Handle 1e4
      Type          Key
    Handle 1e8
      Type          Mutant
    Handle 1ec
      Type          Thread
    Handle 1f0
      Type          Port
    Handle 1f4
      Type          Key
    Handle 1f8
      Type          Key
    Handle 1fc
      Type          Event
    Handle 200
      Type          Port
    Handle 204
      Type          Event
    Handle 208
      Type          Key
    Handle 20c
      Type          Event
    Handle 210
      Type          Event
    Handle 214
      Type          Key
    Handle 218
      Type          Key
    Handle 21c
      Type          Key
    Handle 220
      Type          Key
    Handle 224
      Type          Thread
    Handle 228
      Type          Event
    Handle 22c
      Type          Event
    Handle 230
      Type          Event
    Handle 234
      Type          Thread
    141 Handles
    Type            Count
    None            1
    Event           32
    Section         2
    File            10
    Port            8
    Directory       4
    Mutant          1
    WindowStation   2
    Semaphore       13
    Key             32
    Token           1
    Process         1
    Thread          6
    Desktop         1
    IoCompletion    25
    KeyedEvent      2
    0:005> !handle c4 f
    Handle c4
      Type          File
      Attributes    0
      GrantedAccess 0x12019f:
             ReadControl,Synch
             Read/List,Write/Add,Append/SubDir/CreatePipe,ReadEA,WriteEA,ReadAttr,WriteAttr
      HandleCount   2
      

  3.   

    这玩意不是给点信息就可以的。你要是有full dump,有经验的人也需要研究很久才能找到原因的
    估计不现实了。还是多加点诊断日志看看在哪停了比较可能
      

  4.   

    以下是analyze -v 的结果。因为我是通过break进去的,不知道有没有用。这个服务本身并没有死,只是suspend了,可能在等什么结果。
    上面贴了!locks 的信息,不过我觉得并不像是lock的问题。还有个线程在readfile,不知道怎么看他在读哪个文件?怀疑会不会是这里出了问题。我对ATL这个架构一点不懂,对于新手来说太复杂了。有没有好的教程看看,启蒙就行。0:005> !analyze -v
    *******************************************************************************
    *                                                                             *
    *                        Exception Analysis                                   *
    *                                                                             *
    ********************************************************************************************************************************************************
    ***                                                                   ***
    ***                                                                   ***
    ***    Your debugger is not using the correct symbols                 ***
    ***                                                                   ***
    ***    In order for this command to work properly, your symbol path   ***
    ***    must point to .pdb files that have full type information.      ***
    ***                                                                   ***
    ***    Certain .pdb files (such as the public OS symbols) do not      ***
    ***    contain the required information.  Contact the group that      ***
    ***    provided you with these symbols if you need this command to    ***
    ***    work.                                                          ***
    ***                                                                   ***
    ***    Type referenced: kernel32!pNlsUserInfo                         ***
    ***                                                                   ***
    *************************************************************************
    *************************************************************************
    ***                                                                   ***
    ***                                                                   ***
    ***    Your debugger is not using the correct symbols                 ***
    ***                                                                   ***
    ***    In order for this command to work properly, your symbol path   ***
    ***    must point to .pdb files that have full type information.      ***
    ***                                                                   ***
    ***    Certain .pdb files (such as the public OS symbols) do not      ***
    ***    contain the required information.  Contact the group that      ***
    ***    provided you with these symbols if you need this command to    ***
    ***    work.                                                          ***
    ***                                                                   ***
    ***    Type referenced: kernel32!pNlsUserInfo                         ***
    ***                                                                   ***
    *************************************************************************FAULTING_IP: 
    ntdll!DbgBreakPoint+0
    7d61002d cc              int     3EXCEPTION_RECORD:  ffffffff -- (.exr 0xffffffffffffffff)
    .exr 0xffffffffffffffff
    ExceptionAddress: 7d61002d (ntdll!DbgBreakPoint)
       ExceptionCode: 80000003 (Break instruction exception)
      ExceptionFlags: 00000000
    NumberParameters: 1
       Parameter[0]: 00000000FAULTING_THREAD:  000007e8DEFAULT_BUCKET_ID:  STATUS_BREAKPOINTPROCESS_NAME:  DCMServer.exeERROR_CODE: (NTSTATUS) 0x80000003 - {EXCEPTION}  Breakpoint  A breakpoint has been reached.NTGLOBALFLAG:  0APPLICATION_VERIFIER_FLAGS:  0SYMBOL_ON_RAW_STACK:  1STACK_ADDR_RAW_STACK_SYMBOL: 12b0184PRIMARY_PROBLEM_CLASS:  STATUS_BREAKPOINTBUGCHECK_STR:  APPLICATION_FAULT_STATUS_BREAKPOINTSTACK_COMMAND:  dds 012B0184-0x20 ; kbSTACK_TEXT:  
    012b0164  004e0049
    012b0168  004f0044
    012b016c  00530057 ADVAPI32!GetPerflibKeyValue+0x39
    012b0170  0073005c
    012b0174  00730079
    012b0178  006f0077
    012b017c  00360077
    012b0180  005c0034 SHLWAPI!g_abWin95CMAP+0x3b74
    012b0184  00000000
    012b0188  00000000
    012b018c  00000000
    012b0190  00000000
    012b0194  000000bc
    012b0198  00000158
    012b019c  00000001
    012b01a0  32ceeacd
    012b01a4  00000214
    012b01a8  00000042
    012b01ac  00000258
    012b01b0  0000030e
    012b01b4  00000002
    012b01b8  00000064
    012b01bc  00000001
    012b01c0  000000b4
    012b01c4  00000120
    012b01c8  00000002
    012b01cc  0000003e
    012b01d0  000001d4
    012b01d4  00000000
    012b01d8  00000000
    012b01dc  00000001
    012b01e0  00000000
    FOLLOWUP_IP: 
    ntdll!DbgBreakPoint+0
    7d61002d cc              int     3SYMBOL_STACK_INDEX:  0SYMBOL_NAME:  ntdll!DbgBreakPoint+0FOLLOWUP_NAME:  MachineOwnerMODULE_NAME: ntdllIMAGE_NAME:  ntdll.dllDEBUG_FLR_IMAGE_TIMESTAMP:  45d709ffBUCKET_ID:  MANUAL_BREAKINFAILURE_BUCKET_ID:  STATUS_BREAKPOINT_80000003_ntdll.dll!DbgBreakPointFollowup: MachineOwner
    ---------
      

  5.   

    服务并没有死? 只是suspend? 你怎么知道suspend了? 可以自己增加一些调试log等,看你的代码在哪里等待..
      

  6.   

    其实我也不知道是不是死了,感觉像是没死 :)我不知道怎么加调试log,是要加到eventlog?请给点提示。谢谢。
    以前不做windows项目的,临时凑数,代码也是别人写的,看也看不懂。
      

  7.   

    服务运行一段时间间隔使用!runaway 7观察看看各个线程的使用时间。然后再根据线程的功能判断是否suspend,不要自己瞎猜,要证据!!
      

  8.   

    自己写个小日志类进去些LOG吧
    我以前就是这样子的
      

  9.   

    就是在你程序一些可疑的地方写一些信息到一个txt文件,然后根据这个文件查看程序运行时的各种条件状态信息等