ERLEDIGT
NEIN
NEIN
ANTWORTEN
18
18
ZUGRIFFE
3534
3534
EMPFEHLEN
-
Hi leutz ich such mich hier schon dumm und dusselig. Ich finde einfach nichts richtiges. Ich möchte den kompletten Pfad von einem Process rausfinden. Bsp.
mit der MeinProgramm.exe möchte ich den pfad von explorer.exe rausfinden und ausgeben.
Wäre nett wenn ihr mir helfen könntet.
-
Hi
Probiers doch mal so:
Code csharp:1 2
Process p = Process.GetProcessesByName("explorer.exe")[0]; Console.WriteLine(p.MainModule.FileName);
Geändert von Nico Graichen (05.12.07 um 21:01 Uhr)
Grüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
hmm muss ich irgendwas noch mit rein haun ? ... using ....
System.array enthält keine definition für StartInfo
ich komm mir dumm vor xD
-
Wieso System.Array?

GetProcessByName liefert dir ein Process-Array zurück. Jedes Element ist ein Process-Objekt. Und darauf musst du weiterarbeiten! (siehe auch Code von oben)
Versuchs mal mit debuggen, dann siehst du auch wo welcher Wert zurück kommt
Grüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
05.12.07 08:32 #5Internetseite:
http://www.texturenland.de
Blog:
http://blog.texturenland.de
Codesnippets:
.NET-Snippets
- Sollte ich bei einer Frage weitergeholfen haben, würde ich mich über eine positive Bewertung freuen -
-
System.Diagnostics hat ich schon drin.
hmm
also ich hab jetz
Process explorer = Process.GetProcessesByName("explorer")[0];
string exp = explorer.StartInfo.FileName;
er gibt mir kein error aus, aber ... explorer exp enthält nichts (null)
kann kein fehler entdecken ..
//Edit
wenn ichs an den string ausgebe (.ToString()) gehts auch net
Geändert von lolko (05.12.07 um 17:24 Uhr)
-
Hi,
Probier doch mal explorer.exe.
Außerdem solltest du prüfen, ob du überhaupt das Recht hast, diesen Prozess zu sehen. (Wird er bei dir im Taskmanager angezeigt?)Grüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
mit . exe dahinter findet er den prozess net und ja sie is im taskmanager ..
er gibt exp ja als null aus .. also da ist nichts drin .. ich hab schon alles versucht aber es will einfach nicht das führt ein zur verzweiflung
//EDIT
so ich bin gerade ma aufgewacht
und hab ma richtig debuggt
Process explorer = Process.GetProcessesByName("explorer")[0];
string exp = explorer.MainModule.FileName;
MessageBox.Show(exp);
es geht jetz
vielen dank für die nette hilfe
Geändert von lolko (05.12.07 um 20:09 Uhr)
-
Ok, mein Fehler, du hast ja den Prozess nicht gestartet. Habs oben korrigiert
Grüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
Sorry aber ganz is das ding doch noch net geklärt
, denn wenn der Prozess nicht läuft
gibt er mir Der Index war außerhalb des Arraybereichs. aus. Und das Programm läuft dann nicht weiter das Problem ist halt das ich das Programm B auch wieders starten möchte und das geht jedoch nicht wenn ich check ob der prozes läuft
-
dann zieh den Code doch weiter auseinander!
Code csharp:1 2 3 4 5 6 7 8 9
Process[] processes = Process.GetProcessesByName("explorer.exe"); if (processes.Length > 0) { Console.WriteLine(processes[0].MainModule.FileName); } else { Console.WriteLine("no process with this name found"); }
Grüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
Nee das mein ich so nicht das geht ja alles nur (ich hab jetz ma dein source genommen)
Process[] explorer = Process.GetProcessesByName("explorer");
if (explorer.Length > 0)
{
string exp = explorer[0].MainModule.FileName;
explorer.Kill();
}
else
{
MessageBox.Show("no process with this name found");
}
und außerhalb von if steht dann noch
Process.Start(exp);
tea definiere ich ja in der if schleife nur dann kommt der Fehler
Der Name "exp" ist im aktuellen Kontext nicht vorhanden.
Und das ist mein jetziges problem. Ich möchte, wenn der Process an ist .. den string definieren. Aber das geht ja iwie net und das nen big problem
weil ich die exe erst killen möchte und danach dann starten
..
Geändert von lolko (07.12.07 um 16:16 Uhr)
-
Hi
Der Skope, in dem du die Variable exp definiert hast, existiert nicht mehr. Die Variable ist nur im If-Teil deine If-Else-Anweisung gültig.
Du musst die Variable vor dem Konstrukt definieren und im If-Teil füllen.
Noch besser wäre aber, wenn du Process.Start() mit im If-Teil ausführst. Ansonsten kommst du zu Problem, wenn der Explorer-Prozess nicht exisitert/gefunden wird.Grüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
naja ich muss sie definieren wenn der prozess existiert... wenn er nicht an is gibt er mir nen fehler , wenn ichs vorher definiere.. weil er ja net an is und start kann ich in der if anweisung net mit einbringen
es muss außerhalb passieren
-
Hi
Kannst du das bitte nochmal schreiben und dich dabei vorallem an die Netiquette halten. Ich hab kein Wort verstanden. Den Aufruf von Prozess.Start() kannst du nur da machen, wo du auch den Pfad zu einer Anwendung hast, ansonsten läufst du in eine FehlerGrüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
Ähnliche Themen
-
Prozess Snapshot erstellen, Prozess abschießen, Prozess neustarten
Von Marius Heil im Forum Coders TalkAntworten: 2Letzter Beitrag: 28.09.10, 02:43 -
Ein anderer Prozess greift auf die Paketdatenbank zu
Von GalaxyWarrior im Forum Linux & UnixAntworten: 2Letzter Beitrag: 12.09.07, 16:56 -
Prozess unter bestimmten pfad ausführen
Von drob im Forum JavaAntworten: 3Letzter Beitrag: 25.08.07, 15:29 -
Durch Programm anderer Prozess starten
Von borislav im Forum JavaAntworten: 0Letzter Beitrag: 28.02.05, 17:13 -
anderer Pfad
Von neopayne im Forum PHPAntworten: 4Letzter Beitrag: 24.12.04, 23:58





Zitieren


Login





