Гость
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Путь после выполнения последней консольной команды / 10 сообщений из 10, страница 1 из 1
18.01.2018, 08:31
    #39586189
TimRX
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Путь после выполнения последней консольной команды
Доброго времени суток.

т.е если запустить команду
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
StartInfo =
                {
                    FileName = "cmd.exe",
                    RedirectStandardOutput = true,
                    UseShellExecute = false,
                    Arguments = "/C cd ..",
                    WindowStyle = ProcessWindowStyle.Normal,
                }


, то в случае с windows 7 cmd.exe находиться по адресу %windir%\system32 в результате выполнения cd .. хочется получить %windir% (к примеру c:\windows). Как можно подобное провернуть ?
...
Рейтинг: 0 / 0
18.01.2018, 08:39
    #39586191
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Путь после выполнения последней консольной команды
Задай WorkingDirectory
...
Рейтинг: 0 / 0
18.01.2018, 10:09
    #39586246
TimRX
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Путь после выполнения последней консольной команды
Как я узнаю какая текущая директория ? Отслеживать команды и редактировать путь вручную ?
...
Рейтинг: 0 / 0
18.01.2018, 10:12
    #39586253
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Путь после выполнения последней консольной команды
TimRXКак я узнаю какая текущая директория ?
Directory.GetCurrentDirectory()
...
Рейтинг: 0 / 0
18.01.2018, 10:16
    #39586257
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Путь после выполнения последней консольной команды
Путь где exe
Код: c#
1.
AppDomain.CurrentDomain.BaseDirectory
...
Рейтинг: 0 / 0
18.01.2018, 12:02
    #39586337
TimRX
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Путь после выполнения последней консольной команды
Речь о нахождения пути после выполнения метода start() класса System.Diagnostics.Process. т.е как я описывал StartInfo выше имеется консольная команда cd .. которая выполняется в интерпретаторе командной строки. После выполнения нужно узнать результирующий путь.
...
Рейтинг: 0 / 0
18.01.2018, 12:10
    #39586340
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Путь после выполнения последней консольной команды
TimRXРечь о нахождения пути после выполнения метода start() класса System.Diagnostics.Process. т.е как я описывал StartInfo выше имеется консольная команда cd .. которая выполняется в интерпретаторе командной строки. После выполнения нужно узнать результирующий путь.зачем? Это тек.путь для консольного экземпляра программы.
Считай что после cd ты перешел. Либо лови ошибки.
...
Рейтинг: 0 / 0
18.01.2018, 15:27
    #39586501
Pu4koff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Путь после выполнения последней консольной команды
изврат типа:
Код: c#
1.
Arguments = "/C cd .. | cd > D:\test.txt",


и забирать путь в файле D:\test.txt
или перенаправлять и ввод и вывод, запускать cmd, а там уже:
Код: c#
1.
2.
3.
4.
proc.StandardInput.WriteLine("команда1");    
proc.StandardInput.WriteLine("команда2");
...
proc.StandardInput.WriteLine("cd");



в StandardOutput соответственно последняя строка будет - текущая папка
...
Рейтинг: 0 / 0
18.01.2018, 16:12
    #39586538
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Путь после выполнения последней консольной команды
текущий каталог много где используется, например в диалогах open, save, при обращении к файлам и т.д.
Считаю, что изменять значение этой переменной окружения, плохая практика, сам механизм старинный и фундаментальный. Особенно драконит, когда Open\Save каждый раз открываются в разных папках, а не последних. Если нужно открыть файл по относительной ссылке, то лучше сперва получить абсолютную из относительной и использовать её.
...
Рейтинг: 0 / 0
18.01.2018, 16:17
    #39586543
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Путь после выполнения последней консольной команды
Roman Mejtes,
+1 тоже давно отказался
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Путь после выполнения последней консольной команды / 10 сообщений из 10, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]