/// <summary> /// Returns the list of path names to the NGEN pdbs for any NGEN image in 'etlFile' that has /// any samples in it. /// </summary> internal static List <string> GetNGenPdbs(string etlFile, SymbolReader symbolReader, TextWriter log) { // Generate the NGen images for any NGEN image needing symbolic information. var pdbFileList = new List <string>(100); foreach (var imageName in ETWTraceEventSource.GetModulesNeedingSymbols(etlFile)) { var pdbName = symbolReader.GenerateNGenSymbolsForModule(imageName); if (pdbName != null) { pdbFileList.Add(pdbName); log.WriteLine("Found NGEN pdb {0}", pdbName); } } return(pdbFileList); }
/// <summary> /// Returns the list of path names to the NGEN pdbs for any NGEN image in 'etlFile' that has /// any samples in it. /// </summary> internal static List <string> GetNGenPdbs(string etlFile, SymbolReader symbolReader, TextWriter log) { // Generate the NGen images for any NGEN image needing symbolic information. var pdbFileList = new List <string>(100); foreach (var imageName in ETWTraceEventSource.GetModulesNeedingSymbols(etlFile)) { var sw = Stopwatch.StartNew(); var pdbName = symbolReader.GenerateNGenSymbolsForModule(imageName); if (pdbName != null) { pdbFileList.Add(pdbName); log.WriteLine("Found NGEN pdb {0}", pdbName); } log.WriteLine("NGEN PDB creation for {0} took {1:n2} Sec", imageName, sw.Elapsed.TotalSeconds); } return(pdbFileList); }