170 похожих чатов

Доброго времени суток! Такой вопрос по работе с Process -

как получить строку вывода из консоли powershell?
Работа такая : пишу микро тулзу на Unity для работы с ARFoundation. Для этого нужно научиться нормально юзать консоль через код.
Логика программы простая - вводим команду, через экзешник получаем результат.
Работает всё примерно так
string pathToExe = Application.dataPath.Replace(@"/", @"\") + "\\ARCoreCheck\\";
string command = pathToExe + "arcoreimg.exe eval-img --input_image_path=C:\\UsingFiles\\UnityProjects\\ARTestProject\\Assets\\ARCoreCheck\\IMG_7432.png";
Process process = Process.Start("powershell.exe", command);

11 ответов

8 просмотров

Посмотрите на тему Process.StandardOutput

Abdulkadir-Karagishiev Автор вопроса
Abdulkadir-Karagishiev Автор вопроса
SomebodyOdd
Какую? Код?

InvalidOperationException: StandardOut has not been redirected or the process hasn't started yet. System.Diagnostics.Process.get_StandardOutput () (at <aa976c2104104b7ca9e1785715722c9d>:0) (wrapper remoting-invoke-with-check) System.Diagnostics.Process.get_StandardOutput() WorkingWithConsole.ARcoreChecking () (at Assets/WorkingWithConsole.cs:28) WorkingWithConsole.OnInspectorGUI () (at Assets/WorkingWithConsole.cs:17) UnityEditor.UIElements.InspectorElement+<>c__DisplayClass59_0.<CreateIMGUIInspectorFromEditor>b__0 () (at

Abdulkadir Karagishiev
InvalidOperationException: StandardOut has not bee...

Ну вот вам ошибка всё и рассказала - вы не сделали перенаправление вывода. RedirectStandardOutput надо поставить в true

Abdulkadir-Karagishiev Автор вопроса
SomebodyOdd
Ну вот вам ошибка всё и рассказала - вы не сделали...

Добавил строку process.StartInfo.RedirectStandardOutput = true; Всё также

Abdulkadir Karagishiev
Добавил строку process.StartInfo.RedirectStandard...

А может вы вместо метода тыка сходите документацию почитать? https://docs.microsoft.com/ru-ru/dotnet/api/system.diagnostics.processstartinfo.redirectstandardoutput?view=net-5.0#System_Diagnostics_ProcessStartInfo_RedirectStandardOutput

Не очень ясно, а зачем тут PowerShell. Кажется, ты просто бинарник запускаешь.

Abdulkadir-Karagishiev Автор вопроса
Dr. Friedrich von Never
Не очень ясно, а зачем тут PowerShell. Кажется, ты...

В одном из семплов кода увидел, поэтому решил использовать его

Abdulkadir-Karagishiev Автор вопроса
Dr. Friedrich von Never
Дак он тебе не нужен.

Ну, у меня все пока что работает, поэтому я в данный момент счастлив :D

Похожие вопросы

Обсуждают сегодня

читать файл максимально быстро? странный вопрос))
zamtmn
53
Привет. Сразу скажу, что на C/C++/Rust я не пишу, но тем не менее возникла потребность дебага C/C++/Rust кода. Суть: есть серверное приложение, которое периодически ведёт себ...
ninekeem 🐳
4
А чего сейчас в моде вместо Error для эксепшенов? А то я тут внезапно узрел что он не рекомендуется :) У Try::Tiny какой-то совершенно ужасный синтаксис если надо конкретные э...
Denis F
17
или вы считаете муит дает знание?
супер_лох_3000 альфа версия
12
А кто такой мужчина в твоем понимании Азиз?
who?です 🐈
11
Ну значит тебе повезло, мы же про транк говорим оба?
Александр (Rouse_) Багель
11
всем привет! углубившись в плюсы и начав изучать реверсинг понял, что без асм'а никуда со своими высокоабстрактными представлениями начал изучать механизмы асма, и не совсем п...
9
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Всем ку. Подскажите, если задекларировал массив так: int arr[10] = {1, 2, 3, 4}, то в arr[4] будет мусор или нуль?
Sasha K
14
буквально один оставшийся вопрос при выполнении строчки mov eax, 5 операнд "5" будет присутствовать где-либо в памяти (любой), кроме как в памяти блока .code? подвопрос: как...
12
Карта сайта