} // end StaticCheckHr() public string GetNameByInlineContext(ulong address, uint inlineContext, out ulong displacement) { string name = null; ulong tmpDisplacement = 0xffffffffffffffff; Debugger.ExecuteOnDbgEngThread(() => { WDebugSymbols ds = (WDebugSymbols)Debugger.DebuggerInterface; CheckHr(ds.GetNameByInlineContextWide(address, inlineContext, out name, out tmpDisplacement)); }); displacement = tmpDisplacement; return(name); } // end GetNameByInlineContext()
} // end GetNameByInlineContext() public string TryGetNameByInlineContext(ulong address, uint inlineContext, out ulong displacement) { string localName = null; ulong localDisplacement = 0xffffffffffffffff; Debugger.ExecuteOnDbgEngThread(() => { WDebugSymbols ds = (WDebugSymbols)Debugger.DebuggerInterface; string tmpName = null; ulong tmpDisplacement = 0; int hr = ds.GetNameByInlineContextWide(address, inlineContext, out tmpName, out tmpDisplacement); if (S_OK == hr) { localName = tmpName; localDisplacement = tmpDisplacement; } }); displacement = localDisplacement; return(localName); } // end GetNameByInlineContext()