Вопрос № 173911: Здравствуйте уважаемые эксперты. Начинаю осваивать консольные приложения Windows, и в самом начале хочется определиться с принципиальными вещами. Подскажите пожалуйста, какай самый быстрый способ вывода символов и текста на экран в консоли? В DOS ...
Вопрос № 173911:
Здравствуйте уважаемые эксперты. Начинаю осваивать консольные приложения Windows, и в самом начале хочется определиться с принципиальными вещами. Подскажите пожалуйста, какай самый быстрый способ вывода символов и текста на экран в консоли? В DOS - это прямая запись в видеобуфер. А в консольных программах есть аналог такой работы с видеобуфером? Если есть, то хоть маленький пример на FASM. Заранее благодарен, Сергей.
Отвечает amnick, 4-й класс :
Здравствуйте, Skakun Sergey. Вы должны понимать, что прямая запись в видеобуфер для программ, работающих под управлением Windows, недоступна. Причем, это не зависит от того, графическая это программа (GUI), консольная или приложение DOS. То, что Вам нужно, называется "Low-Level Console I/O". Соответствующие функции позволяют записывать символы и атрибуты в буфер консоли.
Пример в приложении сначала использует высокоуровневую функцию WriteConsole для вывода текстовой строки в текущую
позицию курсора. Затем, та же строка выводится и раскрашивается с помощью низкоуровневых функций WriteConsoleOutputCharacter и FillConsoleOutputAttribute.
Кроме того, Вас может заинтересовать функция WriteConsoleOutput. Вы можете создать буфер в памяти как двумерный массив структур CHAR_INFO (символ/атрибут) и копировать информацию из этого массива в буфер консоли.
Обратитесь к MSDN за доступными консольными функциями и их детальным описанием.
Успехо
в!
Приложение:
Ответ отправил: amnick, 4-й класс
Ответ отправлен: 02.11.2009, 16:35
Оценка ответа: 5 Комментарий к оценке: Понятно. Спасибо большое
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 256117
на номер 1151 (Россия) |
Еще номера »
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Оценить выпуск »
Нам очень важно Ваше мнение об этом выпуске рассылки!
* Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи.
(полный список тарифов)
** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
*** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.