Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Предел размера буфера консоли [D6, WinXP]


Gero ©   (2005-01-27 22:56:00) 

Задаю размер буфера консоли с помощью SetConsoleScreenBufferSize.
Ширина — 80, высота — как можно больше.
Больше 32767 задать не получается.
Почему так, и возможно ли получить буфер большего размера?


Просто Джо   (2005-01-31 03:53:00) [1]


> Попытаюсь переписать объявление SetConsoleScreenBufferSize,
> может получится чего.


Не получится :(
COORD - это не придумка дяди Борланда, а придумка Майкрософта.


Gero   (2005-01-30 23:25:00) [2]


> Игорь Шевченко ©   (28.01.05 23:54)

Да, я уже сам разобрался, сначала забыл, что TCoord это не TPoint.
Попробую схитрить.
Передаем-то мы два байта, а один из них на отрицательные значения уходит, которые нам и не нужны вовсе.
Попытаюсь переписать объявление SetConsoleScreenBufferSize, может получится чего.


Игорь Шевченко   (2005-01-28 23:54:00) [3]


> Больше 32767 задать не получается.


Посмотри структуру COORD - там размеры объявлены переменными типа SHORT, что соответствует максимальному значению 32767.

С уважением,


Cobalt   (2005-01-28 22:41:00) [4]

Если предполагается прокрутка текста - то организуй его нормально, а не через такую фигню (кол-во строк).


Gero   (2005-01-27 23:47:00) [5]

Есть консольное приложение, никакого GUI.
Нужно вывести на экран большой текст, разбиение на страницы нежелательно.
Возможно ли это вобще? (Я имею ввиду преодоление лимита строк)


GuAV   (2005-01-27 23:43:00) [6]

Gero ©   (27.01.05 23:04) [2]
Всё же, что за задача ?

Тебе нужно на экран вывести столько тескта - юзай RichEdit.

Ты передаёшь выход своей программы другой программе ? тогда все строки и так попадут к ней.

Тебе нужно использовать имеющуюся консольную прогу ? Запускай CreateProcess с параметром чтобы получить её ввод и вывод и используй RichEdit (или ещё что-нибудь МногоТекстовое).


Gero   (2005-01-27 23:04:00) [7]


> смысл?

Чтобы вывести в консоли количество строк, большее, чем 32767.
Так того требует задача.


Kerk   (2005-01-27 23:03:00) [8]

Gero ©   (27.01.05 22:56)
возможно ли получить буфер большего размера?


смысл?


Наверх

Титульная страница Поиск, карта сайта Написать письмо