Пользовательский агент или демон?

Пишу драйвер на HID-устройство. Драйвер открывает HID-устройство в режиме монопольного доступа. Этот драйвер должен работать для всех пользователей. Значит, это должен быть либо пользовательский агент, либо демон.

В драйвере я использую некоторые API CoreGraphics, которые находятся в рамках ApplicationService, но Technote скажет, что демон не получит доступа к платформе ApplicationService.

Итак, я могу выбрать User Agent, но я не знаю, как ведет себя User Agent, когда выполняется быстрое переключение пользователей.

Не могли бы вы подсказать, в каком направлении мне следует двигаться ?

С уважением, Девара Гудда

Изменить: структура CoreGraphics используется для публикации событий.


person Raviprakash    schedule 01.07.2010    source источник


Ответы (1)


Если вам нужны библиотеки coregraphics, вы должны быть полностью в контексте пользовательского пространства и работать в их среде для предоставления изображений. Я не знаю подробностей того, что вам нужно, но вы можете поиграть в некоторые игры, запустив при необходимости компонент пользовательского пространства приложения, который каким-то образом вернет графику пользователю.

Если вы пользовательский агент, то при переключении этот код все еще будет работать, но оконные механизмы не будут писать на экраны, которые вы видите. Если вы просто создаете изображения глубоко под одеялом, это может не иметь значения. Я не помню, будет ли ваш код приостановлен или нет - я думаю, что он просто идет «в фоновом режиме», хотя не вдавался в подробности.

Суть вопроса в том, что вы делаете с библиотеками CoreGraphics и зачем они вам нужны. Если вы создаете фоновые изображения для чего-то, что не является специфическим для пользователя, и хотите, чтобы он работал постоянно независимо от пользователя, то, возможно, посмотрите на альтернативную графическую библиотеку, которая не требует, чтобы оконные системы выполняли работу с графикой (например, libgd или такой)

person heckj    schedule 10.07.2010