Genau das, was der Titel sagt,Liste der Prozesse mit hoher Priorität im Listenfeld
Ich brauche Hilfe herausfinden, wie Sie Prozesse mit hoher Priorität in einer Listbox auflisten. Ich bin in der Lage, alle Prozesse in einer Listbox hochzuladen, aber ungefiltert.
Process[] allprocs;
private void GetProccesses()
{
allprocs = Process.GetProcesses();
if(Convert.ToInt32(ProcNumLabel.Text) != allprocs.Length)
{
ProcList.Items.Clear();
for(int i=0; i<allprocs.Length; i++)
{
ProcList.Items.Add(allprocs[i].ProcessName);
}
ProcNumLabel.Text = allprocs.Length.ToString();
}
Ich habe eine Bezeichnung, die die Menge des Prozesses in der aktuellen Liste zählt. Das Listenfeld mit hoher Priorität ist mein nächster Schritt, den ich gerne machen würde.
Hinzugefügt:
for(int i=0; i<allprocs.Length; i++)
{
ProcList.Items.Add(allprocs[i].ProcessName);
if(allprocs[i].PriorityClass == ProcessPriorityClass.High)
{
HiList.Items.Clear();
HiList.Items.Add(allprocs[i].ProcessName);
}
}
ProcNumLabel.Text = allprocs.Length.ToString();
mein Problem gelöst.
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
GetAllProcesses();
}
private void GetAllProcesses()
{
AllProcBox.Items.Clear();
HiPriBox.Items.Clear();
foreach(System.Diagnostics.Process p in System.Diagnostics.Process.GetProcesses())
{
if (p.BasePriority == 13)
{
HiPriBox.Items.Add(p.ProcessName);
}
if (p.BasePriority < 13)
{
AllProcBox.Items.Add(p.ProcessName);
}
}
}
Holen Sie sich die Arbeit erledigt.
Windows nicht mag "ProcessPriorityClass.High"
Was ist Ihre Frage? Wenn Sie nicht wissen, wie Sie die Priorität erhalten, dann verwenden Sie die ['Process.PriorityClass'] (https://msdn.microsoft.com/en-us/library/system.diagnostics.process.priorityclass (v = vs.110) .aspx) Eigenschaft: 'if (allprocs [i] .PriorityClass == PriorityClass.High) {Zur Liste hinzufügen}' – Quantic
Dies war die allgemeine Richtung, in die ich mich bewegte, konnte einfach nicht herausfinden ganz wo, um es in den Code zu setzen. – Nic
@Quantic Sobald ich diesen Code hinzugefügt habe, wird eine Ausnahme ausgelöst. Der Zugriff wurde verweigert. Ich habe versucht, das Ausführen der exe im Admin-Modus, immer noch das gleiche mehr oder weniger zu kompilieren. – Nic