Just nu i M3-nätverket
Gå till innehåll

(nybörjare) leta efter program i samma mapp?


Mossmyr

Rekommendera Poster

Hallå där!

 

Jag rätt ny till C#, och tänkte göra ett enkelt program som startar två andra program (.exe) efter varandra.

Jag har lyckats får det att funka genom

 

System.Diagnostics.Process launch = new System.Diagnostics.Process();
launch.StartInfo.FileName = "J:\\Games\\Prince of Persia - The Two Thrones\\PrinceOfPersia.exe";
launch.StartInfo.RedirectStandardError = false;
launch.StartInfo.RedirectStandardOutput = false;
launch.StartInfo.UseShellExecute = false;
launch.Start();

(två gånger efter varandra för de olika programmen) men som ni ser måste PrinceOfPersia.exe ligga där i J:

Om jag skulle få för mig att flytta på mappen den ligger nån annanstans skulle programmet inte fatta vad jag vill starta, right?

 

Så det jag undrar över är; hur kan jag göra så att mitt program letar efter en "PrinceOfPersia.exe" i samma mapp som den ligger i? Så att PrinceOfPersia.exe kan ligga varsomhelst, så länge mitt program är i samma mapp.

 

(och som en bonus fråga undrar jag vad RedirectStandardError, RedirectStandardOutput och UseShellExecute gör? Jag hittade koden på nätet och de tre verkar inte nödvändiga för att koden ska funka.)

Länk till kommentar
Dela på andra webbplatser

Använd följande:

string dir = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location);
string file = dir + @"\PrinceOfPersia.exe";
launch.StartInfo.FileName = file;

 

Betydelsen av de olika egenskaperna du frågade efter kan du hitta här:

http://msdn.microsoft.com/en-us/library/system.diagnostics.processstartinfo.aspx

Länk till kommentar
Dela på andra webbplatser

Tack så mycket :) Min kod är inte fin :P men den funkar som den ska.

 

BTW, linken du gav mig ger samma förklaringar som visual studio ger när man har musen över koden tillräckligt länge, och jag förstod inte det som skrevs :/ (amatör you know) Jag borde kanske skrivit det.

Strunt i det, var bara nyfiken, tack för hjälpen!

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...