2011-06-04 11 views
13

mam jakiś kod, który uruchamia zewnętrzny program, choć jest to możliwe, aby określić katalog roboczy, jak zewnętrzny program to program konsoli:Otwórz program z C# - także określając katalog roboczy

Kod:

private void button5_Click_2(object sender, EventArgs e) 
    { 
     System.Diagnostics.Process.Start(@"update\update.exe"); 
    } 

Odpowiedz

25

Tak, jest to możliwe, należy używać ProcessStartInfo obiekt określić wszystkie params trzeba i potem po prostu przekazać je do metody Start tak:

... 
using System.Diagnostics; 
... 

var psi = new ProcessStartInfo(@"update\update.exe"); 
    psi.WorkingDirectory = @"C:\workingDirectory"; 
Process.Start(psi); 
+0

Dzięki to właśnie tego szukam! – Dan

+0

@Dan: bez problemu, witamy na stronie – Dyppl

6

Możesz określić katalog roboczy przy użyciu ProcessStartInfo.WorkingDirectory.

... 
using System.Diagnostics; 
... 

var processStartInfo = new ProcessStartInfo(@"explorer.exe"); 
    processStartInfo.WorkingDirectory = @"C:\"; 
var process = Process.Start(processStartInfo); 
+0

@ Thank you, many appreicated – Dan