Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Послать сигнал от приложения к сервису, CreateEvent 
:(
    Опции темы
MbIcJIuBcJIyX
Дата 16.8.2008, 22:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Приветствую.

Такая проблема, сделал сервис который должен получать сигнал от приложения, 

в приложении создаю CreateEvent, посылаю SetEvent, а в сервисе ловлю событие с помощью OpenEvent и WaitForSingleObject, в XP все прекрасно работает, но в Висте увы нет.

пробывал наоборот, в сервисе делать CreateEvent и WaitForSingleObject, а в приложении OpenEvent и SetEvent, ни в XP не в висте не работает.

собственно вопрос, почему на висте не работает?

у CreateEvent есть интересный параметр, типа TSecurityAttributes, честно говорят не очень разбираюсь в этом, нашел пару примеров в Инете заполучения этого параметра, но при этом вылетает ошибка Отказано в доступе.

пример:
Код

   Win32Check(InitializeSecurityDescriptor(@SD, SECURITY_DESCRIPTOR_REVISION));
  Win32Check(SetSecurityDescriptorDacl(@SD, true, nil, false));
  SA.nLength:= SizeOf(SA);
  SA.lpSecurityDescriptor := @SD;
  SA.bInheritHandle := False;

    hCreateEvent := CreateEvent(@SA, TRUE, FALSE, 'ACC_TIME_SYNC');
    if hCreateEvent = 0 then RaiseLastWin32Error;


как же все таки послать сигнал из приложения сервису, нужен исключительно сигнал, т.к.  никаких данных передать не нужно.
PM MAIL   Вверх
safright
Дата 16.8.2008, 23:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Врядли поможет, но вот небольшой ликбез: каждый процесс, шире - действие программы, имеют некоторый дескриптор безопасности (не путать с дескриптором окна). В дескрипторе содержится довольно много инфы, ключевой является маска доступа: к чему имеет право обращаться/изменять/удалять и т.д. процесс с данным дескриптором. В WinXP за дескриптор безопасности пользователя отвечает winlogon (можно на него глянуть в process manager'е), т.е. все действия пользователя выполняются с дескриптором безопасности, который задан для этого процесса. Программы, запускаемые пользователем обычно имеют дескриптор безопасности от explorer.exe (опять же можно посмотреть в дереве процессов). Хотя есть возможность поместить его в srvices...

В общем, по моему непрофессиональному мнению: причина может быть в том, что сервису не хватает прав доступа (возможно - как раз стоит поместить его в уровень повыше), либо, что оч возможно - "Винда свято мешает юзеру сделать что-то опасное". Отключи всю защиту - мб дело в файрволле.
PM MAIL ICQ   Вверх
MbIcJIuBcJIyX
Дата 16.8.2008, 23:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Способ: отключить защиту не приемлем в моем случае smile
я шароварщик, пишу для публики smile

возможно есть другой способ подать сигнал из приложения сервису?
PM MAIL   Вверх
BaD_SeCt0R
Дата 17.8.2008, 00:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Lazy Coder
**


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

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



Цитата(MbIcJIuBcJIyX @  16.8.2008,  23:22 Найти цитируемый пост)
возможно есть другой способ подать сигнал из приложения сервису?

MMF?


--------------------
Кто владеет информацией - владеет миром. (С) Френсис Бэкон.
PM MAIL ICQ   Вверх
MbIcJIuBcJIyX
Дата 17.8.2008, 01:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



MMF?
PM MAIL   Вверх
BaD_SeCt0R
Дата 17.8.2008, 09:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Lazy Coder
**


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

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



Цитата(BaD_SeCt0R @  17.8.2008,  00:46 Найти цитируемый пост)
MMF?

Memory Mapped Files


--------------------
Кто владеет информацией - владеет миром. (С) Френсис Бэкон.
PM MAIL ICQ   Вверх
MbIcJIuBcJIyX
Дата 17.8.2008, 11:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



разве MMF может дать сигнал? это скорей для обмена данными, как сервис узнает что я создал file mapping?

CreateFileMapping так же как и CreateEvent имеет параметр типа PSecurityAttributes, что то мне подсказывает что я столкнусть с той же проблемой в висте.
PM MAIL   Вверх
BaD_SeCt0R
Дата 17.8.2008, 11:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Lazy Coder
**


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

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



Цитата(MbIcJIuBcJIyX @  17.8.2008,  11:27 Найти цитируемый пост)
это скорей для обмена данными

прости, значит не так понял
А вообще вариантов масса. Сокеты, пайпы, можно даже сделать сервису невидимое окошко и слать туда сообщения.


--------------------
Кто владеет информацией - владеет миром. (С) Френсис Бэкон.
PM MAIL ICQ   Вверх
MbIcJIuBcJIyX
Дата 17.8.2008, 12:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



сокеты и пайпы я оставил как запасной вариант, от без исходности если что smile
а с невидимым окошком на висте уже не прокатывает, на XP без проблем.
PM MAIL   Вверх
BaD_SeCt0R
Дата 17.8.2008, 12:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Lazy Coder
**


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

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



Цитата(MbIcJIuBcJIyX @  17.8.2008,  12:06 Найти цитируемый пост)
невидимым окошком на висте уже не прокатывает

Да и вообще окно может стать причиной нестабильности сервиса.


--------------------
Кто владеет информацией - владеет миром. (С) Френсис Бэкон.
PM MAIL ICQ   Вверх
safright
Дата 17.8.2008, 16:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Не помню, ибо не знаю, но можно еще иконку в трей пихнуть - она, кажется, тож получает дескриптор  smile 

Это сообщение отредактировал(а) safright - 17.8.2008, 16:48
PM MAIL ICQ   Вверх
MbIcJIuBcJIyX
Дата 17.8.2008, 21:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Иконка в трей к сожалению тоже не вариант.
PM MAIL   Вверх
Virtuals
Дата 18.8.2008, 13:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



MbIcJIuBcJIyX
может попробовать
Mutexes или Semaphores
PM MAIL ICQ   Вверх
CodeMonkey
Дата 25.8.2008, 11:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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





--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: WinAPI и системное программирование"
Snowybartram
MetalFanbems
PoseidonRrader
Riply

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • 99% ответов по WinAPI можно найти в MSDN Library, оставшиеся 1% здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема »


 




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


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

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