string GetCoreClrDirectory( IntPtr self) { if (_soshost.AnalyzeContext.RuntimeModuleDirectory == null) { foreach (ModuleInfo module in _soshost.DataReader.EnumerateModules()) { if (SOSHost.IsCoreClrRuntimeModule(module)) { _soshost.AnalyzeContext.RuntimeModuleDirectory = Path.GetDirectoryName(module.FileName) + Path.DirectorySeparatorChar; } } } return(_soshost.AnalyzeContext.RuntimeModuleDirectory); }
int LoadNativeSymbols2( IntPtr self, bool runtimeOnly, ModuleLoadCallback callback) { foreach (ModuleInfo module in _soshost.DataReader.EnumerateModules()) { if (runtimeOnly) { if (SOSHost.IsCoreClrRuntimeModule(module)) { callback(IntPtr.Zero, module.FileName, module.ImageBase, unchecked ((int)module.FileSize)); break; } } else { callback(IntPtr.Zero, module.FileName, module.ImageBase, unchecked ((int)module.FileSize)); } } return(S_OK); }