Пользовательский агент или демон? - PullRequest
0 голосов
/ 01 июля 2010

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

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

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

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

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

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

1 Ответ

1 голос
/ 10 июля 2010

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

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

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

...