Forum Linux.pl

Programowanie => Inne => Wątek zaczęty przez: emka1111 w 2005-11-16, 22:04:23

Tytuł: Wysyłanie z programu głownego do konsolowego CTRL+C
Wiadomość wysłana przez: emka1111 w 2005-11-16, 22:04:23
W kde 3.2 a także 3.4 pojawia się problem polegający na tym, że uruchomienie programu kbear \\"rozwala\\" tackę systemową (ikony są rozrzucone po całym pasku z dużymi przerwami między nimi a część \\"ucieka \\" poza ekran. Po pewnym czasie od zamknięcia kbear wszystko wraca do normy. Czy ktoś spotkał się z takim problemem, jaka jest tego przyczyna i czy coś można na to poradzić.
Dużo pracuję na zdalnym serwerze i z kbear korzystam bez przerwy - wspomniana niedogodność jest dla mnie uciążliwa. Obecnie używam Mandriva 2006 ale podobne problemy miałem na Mandrake 10.0, 10.1, Mandriva 2005, Suse 9.2, Suse 9.3.
Tytuł: Wysyłanie z programu głownego do konsolowego CTRL+C
Wiadomość wysłana przez: emka1111 w 2005-11-30, 19:37:02
Rozwiązanie problemu jest banalnie proste (sam nie wiem jak mogłem wcześniej na to nie wpaść) - wystarczy usunąć kbear z tacki systemowej. Po uruchomieniu programu pasek pozozstaje w całości ale zdaję sobie sprawę, że jest to \\"leczenie objawów\\" a nie walka z przyczyną. Swoją drogą jestem ciekaw przyczyny...
Tytuł: Wysyłanie z programu głownego do konsolowego CTRL+C
Wiadomość wysłana przez: Tad w 2005-11-16, 19:09:05
Z programu ktory próbuję pisać w Gambasie (klon VisualBasica), uruchamiam program konsolowy.
W pewnej chwili przyciskiem chcę program uruchomiony w konsoli z pozycji głownego programu zatrzymać.
Do tego celu muszę wysłać sygnał CTRL + C. Jakim poleceniem to wykonać i jak.

Proszę o odpowiedzi nawet jeśli nie będzie to dotyczyło programowania w Basicu, lub jego odmianach, bo może to mnie naprowadzić na właściwy trop.

PS I w ogóle jak wysyła się znaki np. klawiszy do konsoli ?
Tytuł: Wysyłanie z programu głownego do konsolowego CTRL+C
Wiadomość wysłana przez: xavery w 2005-11-16, 19:57:55
> Do tego celu muszę wysłać sygnał CTRL + C. Jakim poleceniem to wykonać i jak.

funkcja systemowa kill(pid,SIGINT);
man 2 kill