C # .Net получить рабочий каталог из fileDialog - PullRequest
0 голосов
/ 10 ноября 2011

В моем приложении есть файл-диалог, в котором, например, указывается путь к файлу для выполнения.

C: \ filespool \ run.exe

Теперь я помещаю это в строковую переменную с именем exepath и выполняю с этим кодом

System.Diagnostics.Process proc = new System.Diagnostics.Process();
proc.StartInfo.WorkingDirectory = path;
proc.StartInfo.FileName = exepath;
proc.Start();

Вы можете видеть, что я установил рабочий каталог, но я не знаю, как получить его наилучшим образом, поэтому я спрашиваю людей, которые знают это здесь. Как получить рабочий каталог "C: \ filespool".

Ответы [ 4 ]

2 голосов
/ 10 ноября 2011

Вы можете создать объект FileInfo и ссылаться на его свойство DirectoryName.Вам нужно будет включить пространство имен System.IO.

FileInfo f = new FileInfo(exepath);
string path = f.DirectoryName;

Вот документация .

2 голосов
/ 10 ноября 2011

Я не уверен, что вам нужно полностью, но вы можете использовать FileInfo.Directory , чтобы получить каталог пути к файлу.

1 голос
/ 10 ноября 2011

Попробуйте метод Directory.GetCurrentDirectory

http://msdn.microsoft.com/en-us/library/system.io.directory.getcurrentdirectory.aspx

0 голосов
/ 11 ноября 2011

Вот один ответ. Это то, что может сбить вас с толку, если вы не готовы к этому. После открытия (или сохранения) диалогового окна Environment.CurrentDirectory изменится на каталог этого диалога. Итак:

path = Environment.CurrentDirectory;
exepath = dlg.FileName;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...