![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| decoder |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 204 Регистрация: 18.5.2004 Где: Харьков(хохол, к сожалению) Репутация: нет Всего: -1 |
Использую функцию SetTimer(0,0,1000,nil)... Как я понял, ядро будет генерировать WM_TIMER и помещать его в системную очередь сообщений...
Пишу в диэлэлке хук WH_GETMESSAGE; в процедуре хука пишу if TMsg(Pointer(lParam)^).message = WM_TIMER then тра-ля-ля В итоге, диэлэлка работает не так, как надо... Вопрос: поскольку проверить не могу, отлавливают WM_TIMER так или по другому? --------------------
Молчать, я вас спрашиваю! |
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 15 Всего: 98 |
смотря где ловить ( если в dll то так )
хотя WM_TIMER в wParam' e идет, по моему -------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| decoder |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 204 Регистрация: 18.5.2004 Где: Харьков(хохол, к сожалению) Репутация: нет Всего: -1 |
Тоды, я не знаю чё такое...
Короче, вот код диэлэлки:
В начале создаётся таймер SetTimer(0,0,1000,nil), потом AddTimer(результат функции), потом постоянно проверяется IsTimring - таким образом реализуется таймер для нескольких приложений Добавлено @ 18:39 плиз, помогите, кто может Это сообщение отредактировал(а) decoder - 19.8.2004, 19:56 --------------------
Молчать, я вас спрашиваю! |
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 15 Всего: 98 |
не совсем эффетивно
если нужно чтобы по одному таймеру что-то выполнялось в нескольих приложениях проще создать Event' ы в потоках ( в каждом приложении ) а в приложении-сервере ( в том, на которое установлен таймер ) эти Event' ы устанавливть -------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| decoder |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 204 Регистрация: 18.5.2004 Где: Харьков(хохол, к сожалению) Репутация: нет Всего: -1 |
У, блин, не... Я стока матерных слов в одном предложении ещё не встречал
Вобщем мне нужно именно пример SetTimer'а с первым параметром нуль и с последним - нил --------------------
Молчать, я вас спрашиваю! |
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 15 Всего: 98 |
попробуй записывать все приходящие сообщения в фйл и посмотри есть ли среди них твое ( от таймера )
-------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| decoder |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 204 Регистрация: 18.5.2004 Где: Харьков(хохол, к сожалению) Репутация: нет Всего: -1 |
ИМХО в инфе написано, что "всё таки она вертится", но я всё равно попробую...
--------------------
Молчать, я вас спрашиваю! |
|||
|
||||
| <Spawn> |
|
|||
![]() Око кары:) ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2776 Регистрация: 29.1.2003 Где: Екатеринбург Репутация: 44 Всего: 64 |
1) Под какой осью пишешь? В Вин 9x хуки еще были криво реализованы и для их работоспособности нужно передавать хендлы хука между адресными пространствами процессов, например при помощи CreateFileMapping + MapViewOfFile
2)
3)SetTimer(0,0,1000,nil) - разве Хендл окна не нужно укаывать? Как оно будет получать то сообщение. Насколько я понимаю, нужно примерно так - SetTimer(Handle, 100, 1000, nil); 4)Зачем тебе вообще это? Опиши подробнее. Может есть другой выход? -------------------- "Для некоторых людей программирование является такой же внутренней потребностью, подобно тому, как коровы дают молоко, или писатели стремятся писать" - Николай Безруков. |
|||
|
||||
| decoder |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 204 Регистрация: 18.5.2004 Где: Харьков(хохол, к сожалению) Репутация: нет Всего: -1 |
--------------------
Молчать, я вас спрашиваю! |
||||
|
|||||
| RA |
|
|||
![]() Брутальный буратина ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3497 Регистрация: 31.3.2002 Где: Лес Репутация: 14 Всего: 115 |
|
|||
|
||||
| decoder |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 204 Регистрация: 18.5.2004 Где: Харьков(хохол, к сожалению) Репутация: нет Всего: -1 |
Та блин, знаю я это
Вот, как должна работать диэлэл:
id записываем куда-нить и в левом приложении можем тоже использовать функцию IsTimring(id) --------------------
Молчать, я вас спрашиваю! |
||||
|
|||||
| dm9 |
|
|||
![]() Дмитрий Копытин ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 3876 Регистрация: 22.7.2002 Где: Москва Репутация: 6 Всего: 137 |
Внесу свою лепту. Может, тебе просто надо поймать WM_TIMER таким образом?
|
|||
|
||||
| decoder |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 204 Регистрация: 18.5.2004 Где: Харьков(хохол, к сожалению) Репутация: нет Всего: -1 |
dm9
--------------------
Молчать, я вас спрашиваю! |
|||
|
||||
| S.A.P. |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 2 Всего: 71 |
Перечитал я еще раз документацию по таймерам на API, но не нашел ни какого упоминания о том, что первый параметр можно установить в 0
Может быть ты имел в виду NULL?
Только не ругай, если ступил |
|||
|
||||
| decoder |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 204 Регистрация: 18.5.2004 Где: Харьков(хохол, к сожалению) Репутация: нет Всего: -1 |
Т.е., если первый параметр равен нулю, таймер не привязывается к окну, и, если последний параметр равен nil, то WM_TIMER посылается SystemQueue... --------------------
Молчать, я вас спрашиваю! |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |