Windows эквивалентна "/ dev / stdin"? - PullRequest
10 голосов
/ 13 сентября 2011

У меня есть код Python, говорящий с библиотекой C ++, которая принимает только имена файлов.Я хочу это читать со стандартного ввода.На машинах Unix я могу использовать "/ dev / stdin".Я думал, что мог бы использовать специальное устройство «CON» в Windows, но это больше похоже на / dev / tty в том смысле, что «echo что-то | my_program» не работает.

Поддержка каналов под Windows не важна, нотеперь мне любопытноЕсть ли что-то вроде имени файла / dev / stdin для этой ОС?

Ответы [ 3 ]

2 голосов
/ 13 сентября 2011

Насколько мне известно, нет эквивалента / dev / stdin.Однако, если вам действительно это нужно, вы можете создать свой собственный именованный канал (CreateNamedPipe) и передать имя в библиотеку C ++, используя отдельный поток для передачи ввода из stdin в именованный канал.

2 голосов
/ 01 июня 2016

Эквивалентными псевдофайлами в Windows являются conIN$ и conOUT$.

1 голос
/ 13 сентября 2011

Возможно, я неправильно понимаю ваш вопрос - вы знаете о cin и stdin, верно?Если вам нужен реальный живой дескриптор winapi для ReadFile или чего-либо еще, используйте GetStdHandle (STD_INPUT_HANDLE)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...