Подтвердить что ты не робот

Windows эквивалентна "/dev/stdin"?

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

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

4b9b3361

Ответ 1

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

Ответ 2

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

Ответ 3

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