Как запустить программу Windows из Elixir? - PullRequest
0 голосов
/ 26 августа 2018

Мне нужно запустить программу Windows из языка программирования Elixir.Я попробовал это с:

System.cmd(..)

и

:os.cmd()

но не повезло .. у меня есть ..

(ErlangError) Erlang error: :enoent

Спасибо за помощь!

1 Ответ

0 голосов
/ 27 августа 2018

Теперь это работает ..

Проблема была в том, что я пытался вызвать System.cmd с помощью команды "start".

Когда я вызываю программу напрямую, она работает:

System.cmd("C:\\Program Files\\Docker\\Docker\\Docker for Windows.exe", [])

Проблема здесь в том, что Elixir / Erlang запускает программу в том же процессе и ждет, пока программа не завершится, прежде чем приступит к коду.

Я решил это с помощью Задачи:

Task.async(fn -> System.cmd("C:\\Program Files\\Docker\\Docker\\Docker for Windows.exe", []) end)

Полагаю, это не лучший способ добиться этого.Дайте мне знать лучшее решение!

...