Ruby - невозможно открыть STDIN-pipe для приложения .NET - PullRequest
0 голосов
/ 11 октября 2019

В настоящее время я борюсь с реализацией конвейера для любой программы .NET. Это началось с того, что я пытался подключить свой скрипт ruby ​​к консоли сервера, и теперь я уже связал это с какой-то ошибкой с ruby. Прямо сейчас я использую эхо-скрипт друзей.

Вот что я делаю:
Обычный IO:

pipeline = IO.popen('Echo.exe', 'r+')
pipeline.gets
# => "Echo Program ready, enter some text:\n"
pipeline.print 'PLEASE REPLY'
pipeline.flush
pipeline.gets
# => (pry) output error: Interrupt (No output will ever come through here)

Open3 IO:

require 'open3'
pipeline = Open3::popen3('Echo.exe')
pipeline[1].gets
# => "Echo Program ready, enter some text:\n"
pipeline[0].print 'PLEASE'
pipeline[0].flush
pipeline[1].gets
# => (pry) output error: Interrupt (No output will ever come through here)

MyСценарий Friends Echo выглядит следующим образом: (C #)

static void Main(string[] args)
    {
    Console.WriteLine("Echo Program ready, enter some text:");
    string input;
    while ((input = Console.ReadLine()) != "exit") Console.WriteLine("Echo: " + input);
}

Я также пробовал использовать обычные каналы ввода-вывода, но у них возникла та же проблема. У вас есть идеи или советы?

...