commencer le service sans invoquer uac

J’ai remarqué que certaines applications (comme la vapeur) peuvent démarrer / arrêter des services en tant qu’utilisateur normal sans invoquer le contrôle uac. Est-ce que quelqu’un sait comment le faire?

OS: Vista / Win 7 Visual Studio 2005 C ++

.

Edit: J’étais en train de jouer avec le service vapeur hier soir pour essayer de comprendre la différence. Si je mets mon service exe là où il se trouve, celui-ci est lancé avec uac (en utilisant sc.exe), mais si je me suis servi de l’exe de vapeur, le mien ne fonctionnait pas. En regardant dans le registre à l’information de service, j’ai trouvé la vapeur avait une partie des permissions supplémentaires à elle. Qu’est-ce que cela signifie et comment le définissez-vous?

.

Modifier 2: vous devez modifier les droits d’access utilisateur du service: http://msdn.microsoft.com/en-us/library/ms684215(VS.85).aspx

La possibilité de démarrer (ou d’arrêter) un service est contrôlée par l’ACL sur le service. Si vous accordez aux utilisateurs interactifs le droit de démarrer votre service, ils peuvent démarrer votre service.

Tout dépend de la façon dont vous configurez votre service lorsque vous l’avez installé.

Évidemment, vous devrez utiliser les API de service Windows (OpenSCManager / OpenService / StartService) pour démarrer le service.