Windows — вывод ASCII в cmd.exe?

Итак, я считаю, что я должен передать ввод-вывод из моего приложения к cmd.exe. Я пытаюсь сделать своего рода «команду» для cmd, где она может быть вызвана непосредственно из cmd или через командный файл. Я не хочу окно, поэтому я использую WinMain как точка входа, в моем приложении нет функции создания окна, поэтому, я полагаю, окно не будет создано.

Если мне требуется передать данные ввода-вывода из моего приложения в текущее открытое окно cmd, разве это не требует захвата выходного дескриптора cmd, передачи строки текста (ASCII) на его вывод (возможно, echo команда?)

Я на правильном пути или нет? В настоящее время я ищу в Google и SOF методы передачи данных ввода / вывода другим запущенным консольным программам, и буду искать до тех пор.

Кроме того, есть ли способ получить переменные, хранящиеся в самом cmd? В пакетном режиме вы можете вызвать переменную через %variable% или если setlocal enabledelayedexpansion включен, вы можете использовать !variable!, Если так, то как?

0

Решение

Нет, вы не в курсе. Ответ намного проще 🙂

Просто напишите на стандартный вывод. Записывать любые сообщения об ошибках в stderr, а для ввода читать из stdin. Эти потоки настроены на запись в консоль (если только у консоли не был перенаправлен ввод / вывод). Ваша программа может затем использоваться в качестве команды, полезной для пакетного скриптинга. Он будет должным образом учитывать любое перенаправление или канал, который создается из командной строки или пакетного сценария, без дополнительной работы с вашей стороны.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]