Entwickler-Ecke
IO, XML und Registry - Prozess auslesen....
tomycat - So 26.04.20 10:08
Titel: Prozess auslesen....
hallo,
ich möchte mir gerne den notepad Prozess auslesen lassen ...
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48:
| using System; using System.Diagnostics; using System.ComponentModel;
namespace MyProcessSample { class MyProcess { void BindToRunningProcesses() { Process currentProcess = Process.GetCurrentProcess();
Process[] localAll = Process.GetProcesses();
Process[] localByName = Process.GetProcessesByName("notepad");
Process localById = Process.GetProcessById(1234); Process[] remoteAll = Process.GetProcesses("myComputer");
Process[] remoteByName = Process.GetProcessesByName("notepad", "myComputer");
Process[] ipByName = Process.GetProcessesByName("notepad", "169.0.0.0");
Process remoteById = Process.GetProcessById(2345, "myComputer"); }
static void Main() { MyProcess myProcess = new MyProcess(); myProcess.BindToRunningProcesses(); } } } |
System.ArgumentException ----> Fehler:{"Es wird kein Prozess mit der ID 1234 ausgeführt."}
Idee ?
Moderiert von Th69: <csharp>- durch C#-Tags ersetzt
Moderiert von Th69: C#-Tags hinzugefügt
Ralf Jansen - So 26.04.20 10:27
Die Stelle die du als die Fehlerzeile kommentierst hast ist die Zeile in der drüber ein Kommentar steht der erklärt warum das passiert :?:
tomycat - So 26.04.20 15:10
thx,
nomalerweise vergibt doch Windows selbst eine Prozess ID?!
Ich nehme an, mit der Funktion kann man selbst eine Prozess ID hinzufügen. Warum geht 1234 nicht?
Oder ich mache einen Denkfehler?!
Th69 - So 26.04.20 15:19
Ja, du verstehst die Funktion falsch. Damit wird keine ID vergeben, sondern damit wird der Prozess gesucht, der die übergebene Id hat (und wenn dieser nicht existiert, eben eine Exception geworfen). Es macht also keinen Sinn, im Programmcode nach einer festen Id zu suchen (da diese von Windows bei jedem Programmstart selbständig vergeben wird - schau einfach im Task-Manager nach, evtl. mußt du "PID" noch als Spalte hinzufügen).
Was ist denn der Sinn bei deinem Code alle möglichen Process-Methoden auszuprobieren?
Ralf Jansen - So 26.04.20 21:44
Zitat: |
Was ist denn der Sinn bei deinem Code alle möglichen Process-Methoden auszuprobieren? |
Jemanden die ganzen möglichen zu zeigen die die Process Klasse so hergibt. Das ist das Standardbeispiel kopiert aus der Dokumentation.
tomycat - Mi 29.04.20 08:28
Das ist richtig, ich habe das Beispiel von der MS Doku rauskopiert.
sorry, ich habe falsch angesetzt.
Ich wollte sehen wann der Prozess notepad gestartet wird.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2024 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!