Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > .NET Languages
You last visited: Today at 16:30

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Process Start

Discussion on Process Start within the .NET Languages forum part of the Coders Den category.

Reply
 
Old   #1

 
__FR3DDIE's Avatar
 
elite*gold: 295
Join Date: Sep 2015
Posts: 323
Received Thanks: 133
Thumbs down Process Start

Hallo Coders-Den,

leider habe ich ein Problem und ich finde keine Lösung. Bei Stackoverflow habe ich mal dazu was geschrieben und ich bin mal so frei, das zu zitieren:


Ich kann gar keinen Prozess starten, ob mit oder ohne Parametern ist egal, auch die auszuführende Datei selbst spielt offenbar keine Rolle. Weiß jemand mehr?
__FR3DDIE is offline  
Old 10/26/2015, 05:14   #2
 
elite*gold: 67
Join Date: Aug 2014
Posts: 1,321
Received Thanks: 927
Xio. is offline  
Old 10/26/2015, 11:06   #3
 
schokox34's Avatar
 
elite*gold: 0
Join Date: Mar 2012
Posts: 886
Received Thanks: 118
Hm, also bei mir funktioniert das so.
Sicher, dass du den Pfad richtig angegeben hast und vollen Zugriff auf die auszuführende Datei hast?

Eventuell kannst du mal:
Code:
Process.Start(System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location) + "/test/testfile.exe", "1 8 EN");
probieren.
schokox34 is offline  
Old 10/26/2015, 11:33   #4

 
__FR3DDIE's Avatar
 
elite*gold: 295
Join Date: Sep 2015
Posts: 323
Received Thanks: 133
Quote:
Originally Posted by Xio. View Post
War nicht allzu hilfreich..

Quote:
Originally Posted by schokox34 View Post
Hm, also bei mir funktioniert das so.
Sicher, dass du den Pfad richtig angegeben hast und vollen Zugriff auf die auszuführende Datei hast?

Eventuell kannst du mal:
Code:
Process.Start(System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location) + "/test/testfile.exe", "1 8 EN");
probieren.
Bei mir hat es auch immer funktioniert und klappt auch in jeder anderen Anwendung super, nur in dieser Anwendung mit dem GhostTheme nicht.
__FR3DDIE is offline  
Old 10/26/2015, 13:00   #5
 
elite*gold: 67
Join Date: Aug 2014
Posts: 1,321
Received Thanks: 927
PHP Code:
string exeDir Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location);
Directory.SetCurrentDirectory(exeDir);
Process.Start(System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location) + "/test/testfile.exe""1 8 EN"); 
Oder besser... p = new Process
PHP Code:
p.StartInfo.WorkingDirectory Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location); 
Xio. is offline  
Old 10/28/2015, 01:58   #6

 
elite*gold: 3
The Black Market: 113/0/0
Join Date: Oct 2013
Posts: 5,814
Received Thanks: 1,813
Vllt musst du die WorkingDir angeben.



Code:
Process p = new Process(); 
p.StartInfo.WorkingDirectory = ".../test/";
p.StartInfo.FileName = @ "../test/test.exe"; 
p.StartInfo.Arguments = "1 8 EN"; //
p.StartInfo.UseShellExecute = false;
p.Start();
Nevada' is offline  
Old 10/30/2015, 20:23   #7
 
D3luxe.'s Avatar
 
elite*gold: 317
The Black Market: 142/0/0
Join Date: Feb 2012
Posts: 2,089
Received Thanks: 881
Quote:
Originally Posted by FreddieMercury View Post
Hallo Coders-Den,

leider habe ich ein Problem und ich finde keine Lösung. Bei Stackoverflow habe ich mal dazu was geschrieben und ich bin mal so frei, das zu zitieren:

Ich kann gar keinen Prozess starten, ob mit oder ohne Parametern ist egal, auch die auszuführende Datei selbst spielt offenbar keine Rolle. Weiß jemand mehr?
Lol. Eventuell die Backslashes falsch rum gemacht bei den Pfaden?


Man beachte den unterschied zwischen "\test\test.exe" und "/test/test.exe". Richtig ist normalerweise ersteres, wobei du es für C# entweder mit doppeltem Backslash oder mit nem @ davor schreiben musst.


Um das ganze unabhängig von der Eingabe zu testen:
Erstelle ein neues Consolenprogramm und füge folgendes Snippet in die Program.cs ein:
Dieses Programm wird sich selbst mit Argumenten starten und einen Beep-Ton ausgeben sowie ne Nachricht anzeigen, wenn es geklappt hat.

PS: Willst du einen Pfad bauen, ohne dich um das Backslash-Problem kümmern zu müssen:
Code:
Path.Combine("teil1", "teil2", "yolo.exe");
// => "teil1\\teil2\\yolo.exe" oder "teil1/teil2/yolo.exe" je nach OS, Pfad stimmt immer
PPS: using Statement: Gibt den Speicher am Ende des using-Blocks wieder frei, auch bei einem Error/Crash.
Wann immer möglich benutzen, wenn du IDisposable Objects hast.

Edit: Test vereinfacht
D3luxe. is offline  
Thanks
1 User
Old 10/31/2015, 12:49   #8

 
__FR3DDIE's Avatar
 
elite*gold: 295
Join Date: Sep 2015
Posts: 323
Received Thanks: 133
Quote:
Originally Posted by D3luxe. View Post
Lol. Eventuell die Backslashes falsch rum gemacht bei den Pfaden?


Man beachte den unterschied zwischen "\test\test.exe" und "/test/test.exe". Richtig ist normalerweise ersteres, wobei du es für C# entweder mit doppeltem Backslash oder mit nem @ davor schreiben musst.


Um das ganze unabhängig von der Eingabe zu testen:
Erstelle ein neues Consolenprogramm und füge folgendes Snippet in die Program.cs ein:
Dieses Programm wird sich selbst mit Argumenten starten und einen Beep-Ton ausgeben sowie ne Nachricht anzeigen, wenn es geklappt hat.

PS: Willst du einen Pfad bauen, ohne dich um das Backslash-Problem kümmern zu müssen:
Code:
Path.Combine("teil1", "teil2", "yolo.exe");
// => "teil1\\teil2\\yolo.exe" oder "teil1/teil2/yolo.exe" je nach OS, Pfad stimmt immer
PPS: using Statement: Gibt den Speicher am Ende des using-Blocks wieder frei, auch bei einem Error/Crash.
Wann immer möglich benutzen, wenn du IDisposable Objects hast.

Edit: Test vereinfacht
Zunächst möchte ich dir für deine Antwort danken. In jeder anderen Anwendung hat meine Methode super geklappt und es lag offensichtlich am GhostTheme. Gelöst habe ich es aber einfach durch einen zweiten Prozess, der durch Prozessinteraktion vom anderen Prozess den Startbefehl erhält. Sehr umständlich, funktioniert aber nun.

Grüße
__FR3DDIE is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
[VB.NET] Process.start
09/30/2015 - .NET Languages - 6 Replies
Hi :), Ich hab ein kleines Problem, welches ich nicht gelöst bekomme. Ich möchte gerne ein Programm/Game starten. Process.Start("C:\example\test.exe") Jedoch möchte ich das gewünschte Programm ohne den Client Patcher starten.
Visual Basic 10 Frage zu Process.Start
07/14/2015 - Off Topic - 2 Replies
Hey Com, ich verzweifel hier gerade.. ich bin ein totaler neuling bei Visual Basic und habe folgendes Problem. Ich möchte, das wenn ich einen Button klicke sich ein Programm vom Desktop öffnet. Das Problem ist ich mache das für unseren Clan und wenn dort der C:\Users\NAME\Desktop\Sempi.exe anders ist funktioniert das ganze nicht mehr oder?
SMC Start Service process with another way
08/08/2012 - SRO Private Server - 3 Replies
Anybody knows how to start service which smc does with external tool? Careful: I'm not talking about starting process, im talking about the start service thingy which smc can do.
Start Game Process Error: 5
08/10/2011 - Cabal Online - 3 Replies
--------------------------- CabalRider --------------------------- Start Game Process Error: 5 path:D:\ReddGames\Cabal Ph\cabalmain.exe cmdline:"D:\ReddGames\Cabal Ph\cabalmain.exe" husky --------------------------- OK ---------------------------



All times are GMT +2. The time now is 16:30.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.