![]() |
|
Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply |
![]()
|
|
| bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: 21 Всего: 88 |
Как отправить сообщение потоку с другого рабочего стола?
-------------------- Обижено школьников: 8 |
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 9 Всего: 98 |
в MSDN' е пишут:
поэтому никак. используй другие методы общения -------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 30 Всего: 484 |
IMHO никак.
Разве что по сети... |
|||
|
||||
| bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: 21 Всего: 88 |
Можно и так. Но нужна очередь - и очередь сообщений потока очень подходит. Чем лучше заменить, что бы с очередью и не ждать обработки?
-------------------- Обижено школьников: 8 |
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 9 Всего: 98 |
смотря кому эта очередь нужна -- если одному потоку очередб и самому реализовать можно и писать в нее по мьютексу.
... хотя очередь делать в любом случае придется. тут интереснее метод доступа реализовать... -------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: 21 Всего: 88 |
есть поток который на всех рабочих столах ставит хуки.
Из процедуры хука нужно сообщать что-то этому потоку. "Что-то" это не просто сообщение которое пришло в процедуру, например при каком-то конкретном сообщении может понадобиться переслать пару килобайт. В пределах одного десктопа я создавал FileMapping, делал DuplicateHandle и отправлял этот хэндл PostThreadMessage. Если то из процедуры хука это может создать тормоза -------------------- Обижено школьников: 8 |
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 9 Всего: 98 |
стартуем в процедуре хука новый поток ( предварительно скопировав ( если нужно ) данные для отправки ) и пишем в общий ресурс в нем
-------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: 21 Всего: 88 |
Во! Вариант. А если я на каждом десктопе создам по серверному потоку и в пределах десктопа оставлю как было. А из этих потоков (их меньше, обычно штуки 3) по таймеру буду писать в этот наш мифический общий ресурс. Видишь недостатки?
-------------------- Обижено школьников: 8 |
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 9 Всего: 98 |
только один -- смысла нет
+ появляется лишнее звено в цепочке ( смысла существования у которого ( опять же ) нет ) -------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: 21 Всего: 88 |
есть!
Вот єто лишнее. Поток для этих целей я и хочу создать заранее, а не в процедуре хука, которая выполняется очень часто -------------------- Обижено школьников: 8 |
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 9 Всего: 98 |
твоя схема:
процедура хука -> какой-то поток -> основной поток моя схема: процедура хука -> основной поток ( поток крутится тут же ) при таком подходе ( IMHO ) читаемость/сопровождаемость выше. но писать тебе -- тебе и решать... -------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: 21 Всего: 88 |
а
Добавлено @ 17:32 ну да ладно, че это я... В общем, спасибо тебя за полезную дискуссию... -------------------- Обижено школьников: 8 |
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 9 Всего: 98 |
но стартует-то поток из этого же приложения. поэтому я его и не считаю. но ( опять же ) писать тебе...
-------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
![]()
|
| Правила форума "Delphi: WinAPI и системное программирование" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |