|
|
@ -97,15 +97,19 @@ namespace ICSharpCode.Profiler.Controller.Data |
|
|
|
/// </summary>
|
|
|
|
/// </summary>
|
|
|
|
public static string GetProcessInstanceName(int pid) |
|
|
|
public static string GetProcessInstanceName(int pid) |
|
|
|
{ |
|
|
|
{ |
|
|
|
PerformanceCounterCategory cat = new PerformanceCounterCategory("Process"); |
|
|
|
try { |
|
|
|
|
|
|
|
PerformanceCounterCategory cat = new PerformanceCounterCategory("Process"); |
|
|
|
|
|
|
|
|
|
|
|
string[] instances = cat.GetInstanceNames(); |
|
|
|
string[] instances = cat.GetInstanceNames(); |
|
|
|
foreach (string instance in instances) { |
|
|
|
foreach (string instance in instances) { |
|
|
|
using (PerformanceCounter procIdCounter = new PerformanceCounter("Process", "ID Process", instance, true)) { |
|
|
|
using (PerformanceCounter procIdCounter = new PerformanceCounter("Process", "ID Process", instance, true)) { |
|
|
|
int val = (int)procIdCounter.RawValue; |
|
|
|
int val = (int)procIdCounter.RawValue; |
|
|
|
if (val == pid) |
|
|
|
if (val == pid) |
|
|
|
return instance; |
|
|
|
return instance; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
} catch (Exception) { |
|
|
|
|
|
|
|
return null; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
return null; |
|
|
|
return null; |
|
|
|