Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Пытаюсь данные из проект показывать в консоле, Все хорошо, но консоль сама закрывается 
:(
    Опции темы
Dreamer_0x01
Дата 16.10.2006, 14:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Терминатор
**


Профиль
Группа: Участник
Сообщений: 780
Регистрация: 14.4.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 12



Добрый день всем-всем-всем!

Решил вот выводить некоторые данные на консоль, а с сим механизмом никогда ВООБЩЕ не работал.
Все выводится как мне надо, но при закрытии программы консоль автоматом закрывается тоже. Можно ее как-то оставить "повисеть" до принудительного ее закрывания?
(это чтобы окно висело и в заголовке было написано что-то типа "сеанс программы такой-то закончен", или как его там дословно - не помню) =)


--------------------
Нет ничего невозможного. Есть цели, и есть время и силы на их достижение.
PM ICQ   Вверх
tnt17
Дата 16.10.2006, 17:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 6.10.2006

Репутация: нет
Всего: нет



Юзай getch(); перед выходом из программы.
PM   Вверх
Dreamer_0x01
Дата 18.10.2006, 20:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Терминатор
**


Профиль
Группа: Участник
Сообщений: 780
Регистрация: 14.4.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 12



я понимаю, что можно вставить принудительную задержку в ход выполнения программы. Но все-таки хотелось бы добиться именно описанного выше эффекта.


--------------------
Нет ничего невозможного. Есть цели, и есть время и силы на их достижение.
PM ICQ   Вверх
Nuzur
Дата 19.10.2006, 09:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1019
Регистрация: 4.7.2004

Репутация: 3
Всего: 5



Dreamer_0x01, создай поток в нем создай консоль и жди от окна создателя сообщения о закрытии, после чего передавай сообщения пользователю. Оно?

Это сообщение отредактировал(а) Nuzur - 19.10.2006, 09:41


--------------------
Never again...
PM MAIL   Вверх
Dreamer_0x01
Дата 20.10.2006, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Терминатор
**


Профиль
Группа: Участник
Сообщений: 780
Регистрация: 14.4.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 12



Nuzur
Не очень понял. 
Цитата(Nuzur @  19.10.2006,  09:33 Найти цитируемый пост)
и жди от окна создателя сообщения о закрытии

Где ждать, и каким образом?

А как сделать, если у меня консольное окно - единственное? (или программа использует несолько окон, но только консольные?)

Мне кажется, это должно как-то делаться намного проще, без ожиданий собщений от потоков создателей.








--------------------
Нет ничего невозможного. Есть цели, и есть время и силы на их достижение.
PM ICQ   Вверх
Nuzur
Дата 20.10.2006, 16:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1019
Регистрация: 4.7.2004

Репутация: 3
Всего: 5





Dreamer_0x01

Цитата

Где ждать, и каким образом?

CEvent
Цитата

А как сделать, если у меня консольное окно - единственное? (или программа использует несолько окон, но только консольные?)

какая разница? Создал ты свою консоль, создал с первой поток, выбрал ГЛАВНУЮ тебе уж веднее какую.
Поток висит и проверяет CEvent каждого сына\дочери(как вам бут угодно) но ет уже детали.
Про синхронизацию потоков отправляю к форуму(не один раз обсуждалось) и к соответ. лит.
Удачи!




--------------------
Never again...
PM MAIL   Вверх
Earnest
Дата 20.10.2006, 16:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 87
Всего: 183



Dreamer_0x01, зачем усложняешь? Либо консоль создается для какого-то процесса (что просто и неявно), и тогда - уж извини - накрывается вместе с этим процессом. И единственный выход - поставить какую-нибудь задержку. Не обязательно getch() - можно ждать чего-нибудь - события, например... Главное, чтобы процесс не закрылся.

Либо консоль создается отдельно, явно и ты явно ею управляешь...
Установить свой заголовок можно в обоих случаях - SetConsoleTitle.



--------------------
...
PM   Вверх
Rickert
Дата 20.10.2006, 17:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: нет
Всего: 52



Если работаешь в VS то просто запусти программу через Ctrl + F5. Также можно в конце программы воткнуть Sleep(10000) - 10 секунд будет висеть.

Это сообщение отредактировал(а) Rickert - 20.10.2006, 17:58


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
Dreamer_0x01
Дата 22.10.2006, 12:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Терминатор
**


Профиль
Группа: Участник
Сообщений: 780
Регистрация: 14.4.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 12



Earnest
помнишь win98?
Там при запуске консольных программ, либо программ, работающих в эмуляции ДОС, пр завершении работы программы консоль оставалась висеть на экране, в ней было написано что-то типа того, что сеанс завершен. А был режим иавтоматического закрытия таких окон при завершении. Выставлялось это в свойствах ярлыка, запускающего такую программу. Я вот и хочу сделать что-то подобное.

ЗЫ. Задержкой я и сейчас пользуюсь, просто тупо жду реакции пользователя, но хочется как всегда что-то "эдакое" сотворить =)

Цитата

Про синхронизацию потоков отправляю к форуму(не один раз обсуждалось)


Да синхронизация меня сейчас менее всего интересует, не тот проект малость ;)


--------------------
Нет ничего невозможного. Есть цели, и есть время и силы на их достижение.
PM ICQ   Вверх
Rickert
Дата 22.10.2006, 19:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: нет
Всего: 52



Цитата(Dreamer_0x01 @  22.10.2006,  12:33 Найти цитируемый пост)
Там при запуске консольных программ, либо программ, работающих в эмуляции ДОС, пр завершении работы программы консоль оставалась висеть на экране, в ней было написано что-то типа того, что сеанс завершен. 

См. мой пост: CTRL+F5


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
Dreamer_0x01
Дата 23.10.2006, 00:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Терминатор
**


Профиль
Группа: Участник
Сообщений: 780
Регистрация: 14.4.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 12



Мне не подойдет CTRL+F5, я ж не буду заказчику предлагать к моей проге вижуал студио поставить и мой исходник в нем запустить ;)


--------------------
Нет ничего невозможного. Есть цели, и есть время и силы на их достижение.
PM ICQ   Вверх
Rickert
Дата 23.10.2006, 03:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: нет
Всего: 52



Dreamer_0x01, а, ну так бы и сказал, а то я думал у тебя что-то типа проблема увидеть результат выводящийся на экран smile


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
Dreamer_0x01
Дата 23.10.2006, 08:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Терминатор
**


Профиль
Группа: Участник
Сообщений: 780
Регистрация: 14.4.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 12



Я результат увижу в любом случае ;)
А вот пользователь может не заметить ;)



--------------------
Нет ничего невозможного. Есть цели, и есть время и силы на их достижение.
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.0995 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.