реклама на сайте
подробности

 
 
> Очистка экрана из C
Pasa
сообщение Mar 26 2010, 12:11
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 107
Регистрация: 4-03-09
Из: Беларусь, Минск
Пользователь №: 45 665



Есть консольное приложение. Принимает строки и в ответ печатает. С помощью перенаправления ввода-вывода работа идет через RS232 (tty устройства) и через телнет. Послылаю esc-последовательности в окошки по RS232 - экран очищается. Посылаю в окшко, работающее через телнет - очистка не работает. Советуют ncurses, curses.....но прога компилится для ARM9260 , а в кросс-компилере нету готовой библиотеки ncurses, curses. Скачал ncurses - но собрать библиотеку быстро не получилось - нету опыта. Может через tcsetattr( STDIN_FILENO, TCSANOW, &newt ); и тому подобное можно как-то решить проблему?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 3)
Pasa
сообщение Mar 26 2010, 14:34
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 107
Регистрация: 4-03-09
Из: Беларусь, Минск
Пользователь №: 45 665



Поплясав с бубном собрал библиотеку для arm.

Тестовый пример(взял с doc в линуксе)

initscr();
//clear();
printw("and removes any definitions for the mini keypad. Type any of those:\n");
refresh();
// win = newwin(LINES - 3, COLS, 3, 0);
endwin(); // завершение работы с ncurses

Скомпилил, запустил - получил Error opening terminal: vt100. Хотя коннктился по RS232 прожкой, в настройках которой стоит vt100.
Ладно - этот же пример скомпилил для RedHat(x86).
Запускаю(из под терминала) - ошибок нет, предупреждений нет, ничего нет. Пример отработал - но на экран ничего не выскочило.
Go to the top of the page
 
+Quote Post
Pasa
сообщение Mar 26 2010, 15:51
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 107
Регистрация: 4-03-09
Из: Беларусь, Минск
Пользователь №: 45 665



так под платформу x86 все заработало. Теперь для арм побороть "Error opening terminal: vt100". Эта ошибка вылетает если просто сделать:

initscr();

p.s.
попробовал по телнету - в окно выдается "Error opening terminal: vt102" - чувствую где-то в системе надо что-то прописать....подскажите где рыть...

Сообщение отредактировал Pasa - Mar 26 2010, 15:55
Go to the top of the page
 
+Quote Post
Pasa
сообщение Mar 26 2010, 18:34
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 107
Регистрация: 4-03-09
Из: Беларусь, Минск
Пользователь №: 45 665



Все заработало - просто тупо полазил по termcap и выбрал последовательность, которая чистит и RS-окна и телнетовские. Понимаю, что мера временная и не решает кардинально вопрос. Оставлю на потом.
Строка такая:

printf("\x1B[H\x1B[J");
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 22:48
Рейтинг@Mail.ru


Страница сгенерированна за 0.02696 секунд с 7
ELECTRONIX ©2004-2016