Консольное приложение на асме

Здравствуйте, товарищи программисты.
Необходимо написать консольное приложение на ассемблере с использованием
WinAPI, читающее текстовые данные построчно со стандартного ввода, слегка
преобразующее их и записывающее построчно в стандартный вывод.
В связи с этим следующие вопросы:
- как осуществлять чтение/запись на стандартный ввод/вывод? Есть ли в виндах
вообще такое понятие? :-)
- каков наиболее простой способ _построчно_ читать текст? Не охота читать
побайтно до ближайшего CR-LF. :-)
- как в тексте программы указать ассемблеру, что данные функции являются
функциями WinAPI? Кроме того, для линкера, скорее всего, понадобится
какая-то библиотека, в которой описаны функции WinAPI, где мне ее взять?
Номер выпуска : 3514
Возраст листа : 343 (дней)
Количество подписчиков : 469
Адрес в архиве : http://subscribe.ru/archive/comp.soft.prog.prog/msg/221287
Получить правила : mailto:comp.soft.prog.prog-rules@subscribe.ru
Формат "дайджест" : mailto:comp.soft.prog.prog-digest@subscribe.ru
Формат "каждое письмо" : mailto:comp.soft.prog.prog-normal@subscribe.ru
Формат "читать с веба" : mailto:comp.soft.prog.prog-webonly@subscribe.ru
-*Информационный канал Subscribe.Ru
Адрес подписки:
Написать в лист: mailto:comp.soft.prog.prog-list@subscribe.ru
Отписать: mailto:comp.soft.prog.prog--unsub@subscribe.ru
http://subscribe.ru/ http://subscribe.ru/feedback
Судя по улыбке, это шутка. Конечно, такое понятие есть.
Ввод-вывод через ReadFile/WriteFile, получить стандартный дескриптор
можно функцией GetStdHandle, указывая в качестве параметра
STD_INPUT_HANDLE, STD_OUTPUT_HANDLE, ...
Если программа должна работать и с консолью, и с перенаправленными
потоками - придется читать побайтно или организовывать буфер
потока. Не так уж много это займет места - функция на
ассемблере строчек десять - пятнадцать.
Если требуется только работа с консолью, можно воспользоваться функцией
SetConsoleMode для установки режима ENABLE_LINE_INPUT.
Только потребуется проверять тип дескриптора
стандартного ввода с помощью GetFileType.
Специального указания не требуется. Достаточно объявить их как
обычные внешние функции с помощью 'extrn'. Хотя бывает и
более подробное описание, например
в masm конструкция 'proto'.
Библиотеки и inc - файлы обычно устанавливаются с ассемблером
(tasm, masm, ...). В крайнем случае можно взять из
какой-либо совместимой среды разработки.
И в любом случае нужна документация по WinApi
(MSDN или, например, файлы справки,
идущие с продуктами Borland).
Номер выпуска : 3515
Возраст листа : 344 (дней)
Количество подписчиков : 470
Адрес в архиве : http://subscribe.ru/archive/comp.soft.prog.prog/msg/221516
Получить правила : mailto:comp.soft.prog.prog-rules@subscribe.ru
Формат "дайджест" : mailto:comp.soft.prog.prog-digest@subscribe.ru
Формат "каждое письмо" : mailto:comp.soft.prog.prog-normal@subscribe.ru
Формат "читать с веба" : mailto:comp.soft.prog.prog-webonly@subscribe.ru
-*Информационный канал Subscribe.Ru
Адрес подписки:
Написать в лист: mailto:comp.soft.prog.prog-list@subscribe.ru
Отписать: mailto:comp.soft.prog.prog--unsub@subscribe.ru
http://subscribe.ru/ http://subscribe.ru/feedback