如题,最近项目里的程序总是出现崩溃,跟com相关的,不知道如何下手,特来论坛请各位大神指点!相关调用栈如下!感觉像是要和远端的com断开连接,如果知道是哪个接口要断开连接呢?如何确定这点?之前记得看到一篇文章讲如何调试com的,现在怎么也找不到了!悲哀!!!
00 0027ed04 7562bb2d 00000010 1f6f59dc 0027ed58 ole32!CStdMarshal::DisconnectSrvIPIDs+0xc2 (FPO: [Non-Fpo]) (CONV: thiscall) [d:\w7rtm\com\ole32\com\dcomrem\marshal.cxx @ 4123]01 0027ed38 75605d00 00000010 00000000 00000000 ole32!CStdMarshal::Disconnect+0x1b3 (FPO: [Non-Fpo]) (CONV: thiscall) [d:\w7rtm\com\ole32\com\dcomrem\marshal.cxx @ 3374]02 0027ed4c 75605ce1 0027ed58 1f6f59dc 00000010 ole32!DisconnectSwitch+0x16 (FPO: [Non-Fpo]) (CONV: stdcall) [d:\w7rtm\com\ole32\com\dcomrem\marshal.cxx @ 3119]03 0027ed64 7565bc5c 00000010 1f6f59d8 00000004 ole32!CStdMarshal::DisconnectAndRelease+0x44 (FPO: [Non-Fpo]) (CONV: thiscall) [d:\w7rtm\com\ole32\com\dcomrem\marshal.cxx @ 3167]04 0027eddc 76470371 00526da0 00000001 1f6e9f90 ole32!CRemoteUnknown::RundownOid+0x20c (FPO: [Non-Fpo]) (CONV: stdcall) [d:\w7rtm\com\ole32\com\dcomrem\remoteu.cxx @ 1492]05 0027ee00 764d6311 75680c91 0027eff0 00000004 rpcrt4!Invoke+0x2a06 0027f208 7572d7e6 0053f0a8 00530df8 1f67ddf0 rpcrt4!NdrStubCall2+0x2d607 0027f250 7572d876 0053f0a8 1f67ddf0 00530df8 ole32!CStdStubBuffer_Invoke+0xb6 (CONV: stdcall) [d:\w7rtm\com\rpc\ndrole\stub.cxx @ 1590]08 0027f298 7572ddd0 1f67ddf0 0049ec60 00000000 ole32!SyncStubInvoke+0x3c (FPO: [Non-Fpo]) (CONV: stdcall) [d:\w7rtm\com\ole32\com\dcomrem\channelb.cxx @ 1187]09 0027f2e4 756489f3 1f67ddf0 004eb608 0053f0a8 ole32!StubInvoke+0xb9 (FPO: [Non-Fpo]) (CONV: stdcall) [d:\w7rtm\com\ole32\com\dcomrem\channelb.cxx @ 1396]0a 0027f3c0 756488e8 00530df8 00000000 0053f0a8 ole32!CCtxComChnl::ContextInvoke+0xfa (FPO: [Non-Fpo]) (CONV: stdcall) [d:\w7rtm\com\ole32\com\dcomrem\ctxchnl.cxx @ 1262]0b 0027f3dc 756494ba 1f67ddf0 00000001 0053f0a8 ole32!MTAInvoke+0x1a (FPO: [Non-Fpo]) (CONV: stdcall) [d:\w7rtm\com\ole32\com\dcomrem\callctrl.cxx @ 2105]0c 0027f408 7572dccd 1f67ddf0 00000001 0053f0a8 ole32!STAInvoke+0x46 (FPO: [Non-Fpo]) (CONV: stdcall) [d:\w7rtm\com\ole32\com\dcomrem\callctrl.cxx @ 1924]0d 0027f43c 7572db41 d0908070 00530df8 0053f0a8 ole32!AppInvoke+0xab (FPO: [Non-Fpo]) (CONV: stdcall) [d:\w7rtm\com\ole32\com\dcomrem\channelb.cxx @ 1086]0e 0027f51c 7572e1fd 1f67dd98 0049db48 00000400 ole32!ComInvokeWithLockAndIPID+0x372 (FPO: [Non-Fpo]) (CONV: stdcall) [d:\w7rtm\com\ole32\com\dcomrem\channelb.cxx @ 1724]0f 0027f544 75649317 1f67dd98 00000400 00471d88 ole32!ComInvoke+0xc5 (FPO: [Non-Fpo]) (CONV: stdcall) [d:\w7rtm\com\ole32\com\dcomrem\channelb.cxx @ 1469]10 0027f558 756492d6 1f67dd98 0027f618 00000400 ole32!ThreadDispatch+0x23 (FPO: [Non-Fpo]) (CONV: stdcall) [d:\w7rtm\com\ole32\com\dcomrem\chancont.cxx @ 298]11 0027f59c 7638c4f7 000201ba 00000400 0000babe ole32!ThreadWndProc+0x161 (FPO: [Non-Fpo]) (CONV: stdcall) [d:\w7rtm\com\ole32\com\dcomrem\chancont.cxx @ 654]12 0027f5c8 7638c5f7 75649236 000201ba 00000400 user32!InternalCallWinProc+0x2313 0027f640 7638cc30 00000000 75649236 000201ba user32!UserCallWinProcCheckWow+0x14b (FPO: [Non-Fpo])14 0027f6a4 7638cc88 75649236 00000000 0027fdb8 user32!DispatchMessageWorker+0x36d (FPO: [Non-Fpo])15 0027f6b4 008ee139 0027f6f4 00901954 00000001 user32!DispatchMessageW+0xf (FPO: [Non-Fpo])
之前参考的链接!终于找到了!
http://geekswithblogs.net/dbose/archive/2008/11/09/com-rpc-and-heap-corruption---windbg-part-2.aspx