Probleme avec un SERVICE windows qui devrait afficher une fenetre !

cs_supergrey Messages postés 475 Date d'inscription vendredi 27 juin 2003 Statut Membre Dernière intervention 20 septembre 2010 - 28 sept. 2006 à 17:49
jayjay9531 Messages postés 18 Date d'inscription vendredi 22 septembre 2006 Statut Membre Dernière intervention 22 février 2008 - 9 oct. 2006 à 14:32
Bonjour, voila j'ai fait un programe (progA) qui affiche une fenetre (créée avec CreateDialog) quand une certaine application est lancée. Il fonctionne tres bien quand je le lance.
J'ai ensuite créé un service avec démarrage automatique qui lance ProgA et le relance si jamais quelqu'un l'arrete. Le probleme c'est dans ce cas de figure ProgA essaye bien d'afficher la fenetre mais elle n'apparait pas. J'ai regardé avec Spy++ la seule différence que j'ai noté c'est "Window Proc" y'a marqué "(Unavailable)" alors que quand je lance PorgA moi meme il y a une adresse.
Est-il possible de régler ce probleme? je ne vois pas de solution.
Merci

4 réponses

BruNews Messages postés 21041 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 17
28 sept. 2006 à 18:15
Vérifie que ton service est interactif desktop.

ciao...
BruNews, MVP VC++
0
cs_supergrey Messages postés 475 Date d'inscription vendredi 27 juin 2003 Statut Membre Dernière intervention 20 septembre 2010
28 sept. 2006 à 18:23
Si c'est ca SERVICE_INTERACTIVE_PROCESS oui...
0
cs_supergrey Messages postés 475 Date d'inscription vendredi 27 juin 2003 Statut Membre Dernière intervention 20 septembre 2010
28 sept. 2006 à 20:02
Sinon j'utilise ShellExecute pour lancer ProgA a partir du service ca peut pas venir de ca?
0
jayjay9531 Messages postés 18 Date d'inscription vendredi 22 septembre 2006 Statut Membre Dernière intervention 22 février 2008
9 oct. 2006 à 14:32
Bonjour,

ton problème a été abordé dans ce topic je pense:
http://www.cppfrance.com/infomsg_LANCER-APPLI-SERVICE-WINDOWS_818196.aspx

Pour que la fenêtre de ton appli puisse s'afficher le service doit être autorisé à interagir avec le bureau.
Lance le gestionnaire de service (Panneau de config >Outils d'administration >Services) et regarde les propriétés de ton service.
Dans l'onglet "connexion" le service doit être lancé en compte système local et tu peux cocher la case "autoriser le service à interagir avec le bureau".

Pour cocher la case à l'installation du service, voir :
http://www.codeproject.com/cs/system/cswindowsservicedesktop.asp

Merci de me préciser si cela répond à ton problème.
0
Rejoignez-nous