Определение, является ли служба диалоговой


Чтобы определить, запускается ли служба как диалоговая служба, вызовите функцию GetProcessWindowStation, чтобы извлечь дескриптор оконной станции, а функцию GetUserObjectInformation, чтобы проверить, имеет ли оконная станция атрибут WSF_VISIBLE. 

Однако, обратите внимание! на то, что нижеследующий ключ реестра включает в себя значение  NoInteractiveServices, который управляет воздействием  флажка SERVICE_INTERACTIVE_PROCESS:

 
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Windows

Значение NoInteractiveServices принимает значение по умолчанию  0 (ноль), что означает, что службам с SERVICE_INTERACTIVE_PROCESS позволяется запуститься в интерактивном режиме. Когда NoInteractiveServices устанавливается в ненулевое значение, никакой службе, стартующей после этого не позволяют запуститься в интерактивном режиме, независимо от того, имеет она или нет флажок  SERVICE_INTERACTIVE_PROCESS.

Назад в оглавление
На главную страницу

Hosted by uCoz