ЧАСТНОЕ ФОТО
на главную подписаться на рассылку сайта сделать стартовой
WEB-БИБЛИОТЕКА
Статьи на сайте

DELPHI
Основы Delphi
Создание консольного приложения
Почему программы допускают недопустимые операции
MIDAS-приложения в среде Delphi
Delphi и ресурсы компьютера
Использование мыши при работе с файлами
Разработка собственных компонентов
Как сделать WebBrowser средствами
Оформление исходных текстов на Delphi
Использование и создание DLL в Delphi
Использование Microsoft ScriptControl
Работа с DDE
Работа с OLE
Примеры вызовов Windows API в Delphi

HTML

WINAPI

БЕЗОПАСНОСТЬ

JAVA

CLIPART

FAQ по Delphi

Неофициальный F.A.Q. эхо-конференции RU.DELPHI

Выборочный FAQ по некоторым интересным вопросам. Часть 1

Выборочный FAQ по некоторым интересным вопросам. Часть 2

FAQ: от Turbo/Borland Pascal к Delphi

 Разное
На главную
Написать письмо
Подписаться на рассылку
Cделать стартовой
ОБРАТНАЯ СВЯЗЬ

Для просмотра сайта рекомендуется :
-Разрешение : 800*600
-Броузер : Internet Explorer
-Для более эффективного
просмотра нажмите F11.

Консольные приложения во всей красе

Я думаю, раз Вы читаете эту статью, значит, мне нет нужды расписывать Вам прелести использования консольных приложений. Наверно, будет достаточным сказать, что консольные приложения уместны там, где требуется компактность, минимум общения программы с пользователем (FAR, скорее, рудимент эпохи Norton Commander, усилий затраченных на его создание, хватило бы на создание обычной GUI программы). Видимо поэтому, Borland не предложила реализаций в Delphi так полюбившейся пользователям Turbo Pascal функции позиционирования курсора GotoXY, ограничившись функциями записи в файл - Write и Writeln.

Цель данной статьи - ознакомить Вас с Console API Windows. Не разложить все по полочкам, а именно ознакомить. Поэтому поступим так, сначала я кратко опишу все описанные в Win32 Developer's References функции, предназначенные для вывода в окно консоли, а в конце разберу небольшой модуль написанный мной для программы перекачки данных из одной базы данных в другую. По моему скромному мнению именно такие программы и должны быть консольными.

Как это ни странно, но в первую очередь программистам не нравятся появляющиеся в консольных приложениях "чебурашки" вместо "русских буковок". Наверно, просто нужно поиграться функциями SetConsoleCP, GetConsoleCP, SetConsoleOutputCP, GetConsoleOutputCP1. Эти функции также будут мной описаны. Ну что, приступим?

Краткий справочник функций WinAPI для работы с консольными окнами.
AllocConsole
Создает новую консоль для процесса. Проще говоря, открывает новое консольное окно из вашей программы.
CreateConsoleScreenBuffer
Создает консольный буфер экрана. Если кто помнит, в DOS экран хранился в памяти и его там можно было изменять? Это нечто подобное.
FillConsoleOutputAttribute
Устанавливает цвет фона и цвет текста для области в буфере экрана.
FillConsoleOutputCharacter
Заполняет области в буфере экрана указанным символом.
FlushConsoleInputBuffer
Очищает консольный буфер ввода.
FreeConsole
Уничтожает консоль созданную AllocConsole.
GenerateConsoleCtrlEvent
Генерирует нажатие клавиш Ctrl-C или Ctrl-Break для указанного консольного процесса.
GetConsoleCP
Возвращает код кодовой страницы для ввода в консоль.
GetConsoleCursorInfo
Получает информацию о размере и видимости к