Page 1 sur 1

[R] Executer un programe par un service

Posté : mer. 05 mai 2010 22:09
par Goguy
voila j'ai besoin de creer un service windows en autoit. pour la creation du service auncun soucis mais lorsque le service doit executer un autre exe celui ci est aussi executer an tant que service windows.

comment l'executer, qu'il soit visible en session windows

merci d'avance

Re: [..] Executer un programe par un service

Posté : jeu. 06 mai 2010 00:44
par jajar
montre ton code, car c'est pas très clair.

Re: [..] Executer un programe par un service

Posté : jeu. 06 mai 2010 09:49
par Goguy

Code : Tout sélectionner

;********************************* pour le service windows
#include<Services.au3>
_Service_init("ABS")

func main()
    while 1
        Run(@WindowsDir & "\ABSE.EXE")
        Sleep(2000)
    WEnd
EndFunc
;********************************* ABSE.EXE

if _Singleton("ABSE",1) = 0 Then Exit
MsgBox(4096, "Test", "essai", 0)

;*********************************
mon probleme est : des que le service windows execute le programme ABSE, ABSE n'est pas visible, pas d'icones autoit. ABSE est visible dans le processus de gestionnaire des taches sous le nom d'utilisateur systeme et non pas mon nom de session

Re: [..] Executer un programe par un service

Posté : jeu. 06 mai 2010 16:46
par sksbir
Bonjour

clic-droit sur "poste de travail" --> gérer --> tu déplies "services et application" --> "services", tu recherches le service que tu as créé

onglet "connexion"
- tu coches "ce compte", et là, tu renseignes le compte que tu veux
- tu coches "autoriser le service à interagir avec le bureau"

Re: [..] Executer un programe par un service

Posté : jeu. 06 mai 2010 17:49
par Goguy
Un grand merci a toi...

A+
sksbir a écrit :Bonjour

clic-droit sur "poste de travail" --> gérer --> tu déplies "services et application" --> "services", tu recherches le service que tu as créé

onglet "connexion"
- tu coches "ce compte", et là, tu renseignes le compte que tu veux
- tu coches "autoriser le service à interagir avec le bureau"

Re: [..] Executer un programe par un service

Posté : jeu. 10 juin 2010 21:40
par Goguy
ça fonctionne mais le programme est executer ( gestionaire des taches ) en tant que systeme et non sous le nom de ma session

si quelqu'un peut m'aider...


sksbir a écrit :Bonjour

clic-droit sur "poste de travail" --> gérer --> tu déplies "services et application" --> "services", tu recherches le service que tu as créé

onglet "connexion"
- tu coches "ce compte", et là, tu renseignes le compte que tu veux
- tu coches "autoriser le service à interagir avec le bureau"

Re: [R] Executer un programe par un service

Posté : ven. 11 juin 2010 09:46
par ricky
Hello,

ton service est lancé avec quelle session?

Re: [R] Executer un programe par un service

Posté : ven. 11 juin 2010 11:50
par Goguy
Dans le gestionnaire des taches il marque système
ma ligne de code pour creer le service est :
_CreateService("", "Abi", "Abi", '"' & @WindowsDir & "\abservice.exe" & '"')

ricky a écrit :Hello,

ton service est lancé avec quelle session?

Re: [R] Executer un programe par un service

Posté : ven. 11 juin 2010 13:43
par ricky
Normalement, si ton service est lancé par system, si celui-ci ouvre un programme il va être lancé par system et non par l'utilisateur en cours car il n'en a pas les droits et accès. Pour palier ce problème, il faut lancer ton service avec ton utilisateur désiré et comme ça ça va ce répercuter sur le programme.

Re: [R] Executer un programe par un service

Posté : lun. 14 juin 2010 19:47
par Goguy
ben je cale, j'y arrive pas...
ricky a écrit :Normalement, si ton service est lancé par system, si celui-ci ouvre un programme il va être lancé par system et non par l'utilisateur en cours car il n'en a pas les droits et accès. Pour palier ce problème, il faut lancer ton service avec ton utilisateur désiré et comme ça ça va ce répercuter sur le programme.