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

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

Обработка сообщений в сервисе


Страницы:   1 2

NX ©   (2007-11-14 18:54:00) 

Обработка сообщений в сервисе.
Допустим есть оконное приложение не сервис его обработчик сообщений такой:
procedure GetMyMessage(var Msg:TMessage);message WM_USER+1;
А как сделать обработчик сообщений в сервисе, т.е. сервис должен обрабатывать в сообщения  до того как хоть какой-нибудь пользователь войдет в систему?


фыв   (2007-11-14 22:14:00) [21]


> Это был ответ на это
>
> > так как службы запускаются "от имени" системы
>
> Что в принципе неверно.


я не точно выразился, вернее неверно, слубы запускаются от имени пользователя "SYSEM"


NX   (2007-11-14 22:13:00) [22]


> фыв   (14.11.07 21:59) [8]


я просто не помню результат как то сталкавался с этим, вот теперь снова столкнулся, кажется ничего не возвращает, но стоит проверить.


фыв   (2007-11-14 22:10:00) [23]

самый простой способ узнать запустить пример, отпишись как будет результат


Anatoly Podgoretsky   (2007-11-14 22:09:00) [24]

Это был ответ на это

> так как службы запускаются "от имени" системы

Что в принципе неверно.


NX   (2007-11-14 22:05:00) [25]

В с++ видел пример реализации через message mapнет примера сейчас показать, будет ли работать?


фыв   (2007-11-14 22:01:00) [26]

ув. Ан. Подгорецкий не могли могли бы вы суть вопроса..


фыв   (2007-11-14 21:59:00) [27]

из msdn:там не сказано, что что его нельзя использовать, если юзер не залогинился..
WM_USER Notification

--------------------------------------------------------------------------------

The WM_USER constant is used by applications to help define private messages for use by private window classes, usually of the form WM_USER+X, where X is an integer value.

Syntax

#define WM_USER       0x0400
Return Value

No return value.
Remarks

The following are the ranges of message numbers.

Range Meaning
0 through WM_USER–1 Messages reserved for use by the system.
WM_USER through 0x7FFF Integer messages for use by private window classes.
WM_APP through 0xBFFF Messages available for use by applications.
0xC000 through 0xFFFF String messages for use by applications.
Greater than 0xFFFF Reserved by the system.

Message numbers in the first range (0 through WM_USER–1) are defined by the system. Values in this range that are not explicitly defined are reserved by the system.

Message numbers in the second range (WM_USER through 0x7FFF) can be defined and used by an application to send messages within a private window class. These values cannot be used to define messages that are meaningful throughout an application, because some predefined window classes already define values in this range. For example, predefined control classes such as BUTTON, EDIT, LISTBOX, and COMBOBOX may use these values. Messages in this range should not be sent to other applications unless the applications have been designed to exchange messages and to attach the same meaning to the message numbers.

Message numbers in the third range (0x8000 through 0xBFFF) are available for application to use as private messages. Message in this range do not conflict with system messages.

Message numbers in the fourth range (0xC000 through 0xFFFF) are defined at run time when an application calls the RegisterWindowMessage function to retrieve a message number for a string. All applications that register the same string can use the associated message number for exchanging messages. The actual message number, however, is not a constant and cannot be assumed to be the same between different sessions.

Message numbers in the fifth range (greater than 0xFFFF) are reserved by the system.

Notification Requirements

Minimum DLL Version None
Header Declared in Winuser.h, include Windows.h
Minimum operating systems Windows 95, Windows NT 3.1

See Also


Anatoly Podgoretsky   (2007-11-14 21:57:00) [28]

> фыв  (14.11.2007 21:46:03)  [3]

Потому


NX   (2007-11-14 21:53:00) [29]

WM_USER+1; параметр для пользовательских сообщений, но так как ни оди пользователь не вошел в систему, то инет сообщений или возможно просто не будет обрабатываться это мое мнение, но не уверен.  Нужен другой способ которого я незнаю.


фыв   (2007-11-14 21:50:00) [30]

тогда поставь вопрос более точно, так как фраза
"А как сделать обработчик сообщений в сервисе, т.е. сервис должен обрабатывать в сообщения  до того как хоть какой-нибудь пользователь войдет в систему?" трудна для поминания


NX   (2007-11-14 21:47:00) [31]


> фыв   (14.11.07 21:46) [3]
> по чему? сервисы запускаются от имени пользователя ?


Я не это спрашивал.


фыв   (2007-11-14 21:46:00) [32]

по чему? сервисы запускаются от имени пользователя ?


Anatoly Podgoretsky   (2007-11-14 21:26:00) [33]

> фыв  (14.11.2007 21:23:01)  [1]

Неверно в принципе


фыв   (2007-11-14 21:23:00) [34]

если я правильно понял вопрос,
ты спрашивал будет ли служба работать если ни один из пользователей не залогинился?
ответ да, так как службы запускаются "от имени" системы


Страницы:   1 2

Наверх

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