x ole32*!*
77793d98 ole32!ptszOleMainThreadWndClass = <no type information>
7767c6b8 ole32!ServerLocationInfo::`vftable' = <no type information>
776d3a45 ole32!CNFFTreeMutex::Release = <no type information>
77671524 ole32!_imp__CopyAcceleratorTableW = <no type information>
then bp 77793d98
Thats fairly easy. For managed code the address returned is not the
real address of the function (i think)
x *data*!*Execute*
<MSIL:048d197e> Data!BeginExecuteNonQuery (void)
<MSIL:048d196c> Data!BeginExecuteNonQuery (void)
<MSIL:048d195b> Data!BeginExecuteNonQuery (void)
<MSIL:048d194a> Data!BeginExecuteNonQuery (void)
<MSIL:048d185f> Data!BeginExecuteNonQuery (void)
<MSIL:048d184d> Data!BeginExecuteNonQuery (void)
this is not the address <MSIL:048d197e> and also, "Data!
BeginExecuteNonQuery" is not the right format for !bpmd. So my
question is how to i browse .net symbol files and get either addresses
or functions names i can use with !bpmd ?
I can go the route of dumping the domain to find module address, then
dumping module to find TypeDefToMethodTableMap address, then 'dd' the
addresses stored there so i can !dumpmt -md them and finally get to
the right address to set a breakpoint with. I just want to know if
there is an easy way to get all the info you need to set a managed
breakpoint using the X command.
thanks all