C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Написание программы работающей в фоновом режиме, под Windows
andruxa-xaxa
Отправлено: 21.12.2006, 14:03


Ученик-кочегар

Группа: Участник
Сообщений: 17



Если кто знает , подскажите пожалуйста, как написать консольную программу под Windows чтобы она запускалась в фоновом режиме?
Что нужно использовать или может быть где посмотреть как это реализуется?
Заранее спасибо!
Romikgy
Отправлено: 21.12.2006, 18:30


Дежурный стрелочник

Группа: Участник
Сообщений: 72



А что в твоем понятии в фоновом режиме?
можно сделать сервис, можно приложением виндов без окна, можно и консолью но для чего нужно?
andruxa-xaxa
Отправлено: 22.12.2006, 10:23


Ученик-кочегар

Группа: Участник
Сообщений: 17



QUOTE (Romikgy @ 21.12.2006, 18:30)
А что в твоем понятии в фоновом режиме?
можно сделать сервис, можно приложением виндов без окна, можно и консолью но для чего нужно?

Задача написать программу которая при запуске не выводила никаких окон — просто работала как фоновый процесс — я не знаю честно говоря как это объяснить в Windows — я знаю как это выглядит в Linux:) Любая команда с добавлением & в конце — то есть при этом свободно выполняются все другие программы — а о ней ничего не слышно и не видно!
Но на самом деле необходимо чтобы она могла отлавливать открытие Word документов Для перехвата открытия документа мне сказали надо воспользоваться функцией WinApi CreateFile — а вот как сделать программу работающей в фоновом режиме я не знаю?
Подскажи пожалуйста если знаешь как это можно сделать или где про это посмотреть!!!
olegenty
Отправлено: 22.12.2006, 10:32


Ветеран

Группа: Модератор
Сообщений: 2412



пиши сервис
Gedeon
Отправлено: 22.12.2006, 11:19


Ветеран

Группа: Модератор
Сообщений: 1742



Не обязательно сервик, File->New->Other... Console Application снять птицу с консоль аппликейшн.
andruxa-xaxa
Отправлено: 22.12.2006, 11:48


Ученик-кочегар

Группа: Участник
Сообщений: 17



QUOTE (olegenty @ 22.12.2006, 10:32)
пиши сервис

А что такое сервис?
andruxa-xaxa
Отправлено: 22.12.2006, 11:54


Ученик-кочегар

Группа: Участник
Сообщений: 17



QUOTE (Gedeon @ 22.12.2006, 11:19)
Не обязательно сервик, File->New->Other... Console Application снять птицу с консоль аппликейшн.

Это в Builder или в Visual?
И при этом приложение будет работать в фоновом режиме?
А как нужно прописать что бы оно выполнялось постоянно — как слушатель запросов если можно так сказать:)?
Romikgy
Отправлено: 22.12.2006, 17:16


Дежурный стрелочник

Группа: Участник
Сообщений: 72



а почему не создать обычное приложение с окошками , и просто их не показывать, или вырезать код для активации и запуска окон
andruxa-xaxa
Отправлено: 23.12.2006, 11:10


Ученик-кочегар

Группа: Участник
Сообщений: 17



QUOTE (Romikgy @ 22.12.2006, 17:16)
а почему не создать обычное приложение с окошками , и просто их не показывать, или вырезать код для активации и запуска окон

Можно — но это как-то нечестно что-ли:)
Но в принципе спасибо большое за идею!!!
Код для активации окон — это код создающий формы?
andruxa-xaxa
Отправлено: 23.12.2006, 11:14


Ученик-кочегар

Группа: Участник
Сообщений: 17



QUOTE (Gedeon @ 22.12.2006, 11:19)
Не обязательно сервик, File->New->Other... Console Application снять птицу с консоль аппликейшн.

А не подскажете как тогда заставить ее постоянно находится как фоновый процесс в памяти?
Romikgy
Отправлено: 23.12.2006, 14:05


Дежурный стрелочник

Группа: Участник
Сообщений: 72



QUOTE (andruxa-xaxa @ 23.12.2006, 10:10)

Код для активации окон — это код создающий формы?

там где создается и показывается,
и чем нечестный метод?

имхо любой процесс в виндах является фоновым smile.gif,
а что показывать или нет , на что реагировать это решает программист
Gedeon
Отправлено: 25.12.2006, 20:59


Ветеран

Группа: Модератор
Сообщений: 1742



QUOTE (andruxa-xaxa @ 23.12.2006, 11:14)
QUOTE (Gedeon @ 22.12.2006, 11:19)
Не обязательно сервик, File->New->Other... Console Application снять птицу с консоль аппликейшн.

А не подскажете как тогда заставить ее постоянно находится как фоновый процесс в памяти?

Да просто не давать до нужного времени выполниться return 0; все зависит от того что в проге должно делаться ИМХО что-то типа WaitForMultipleObjects стоит смотреть, как Вы вообще реализацию того что дожна прога делать уже придумали? От этого надо плясать.
VI099nHsguY7
Отправлено: 29.12.2006, 01:13


Ученик-кочегар

Группа: Участник
Сообщений: 1



Используй ссылку: openlib.org.ua/ru
Там найдешь достаточно информации по своему вопросу. Например, из книги "Программирование на C++ глазами хакера". Надеюсь понимание общей концепции будет приобретено.

Вернуться в Вопросы программирования в C++Builder