![]() |
| Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé. | |||||||
|
|||||||
| S'inscrire | Règles | Tutoriels | Chat (3) | FAQ | Membres | Calendrier | Marquer les forums comme lus |
| Windows Forum d'entraide sur le système Windows. Lire la F.A.Q Windows XP et la F.A.Q Windows Vista |
![]() |
|
|
Outils de la discussion |
|
|
#1 (permalink) |
|
Invité de passage
![]() Date d'inscription: octobre 2007
Messages: 7
|
Salut à tous !
je me suis fait un petit programme, que j'ai mis en "service windows" afin de pouvoir communiquer avec lui même si aucun utilisateur n'est connecté. je souhaite qu'il puisse "interagir" avec le bureau, en affichant par exemple une fenetre. Il faut cocher l'option "interagir avec le bureau" dans les options du service, ce que je fais indirectement en modifiant la BDR. Et ça marche ! Mais uniquement une fois que j'ai fait la manip suivante : dans les options du service, je décoche puis recoche l'option "interagir avec le bureau", fait "appliquer", puis redémarre le service (!!!) Et là, ça marche... Et si je fais pas ce "décoche-recoche" (sans appliquer entre-deux !) et ce redémarrage du service, rien ne s'affiche... Quelqu'un a une idée du problème, parce que là, je sèche ![]() Dernière modification par Guardian 26/10/2007 à 17h18. Motif: Majuscules + sms |
|
|
|
|
|
#2 (permalink) |
![]() Date d'inscription: mai 2007
Localisation: France
Messages: 1 279
|
Je pense que le problème vient du fait que le privilège "Interagir avec le bureau" est donné au service uniquement au lancement du service
Il n'est pas donné à un service qui s'exécute déjà Raymond |
|
|
|
|
|
#3 (permalink) |
|
Invité de passage
![]() Date d'inscription: octobre 2007
Messages: 7
|
salut ram_0000
bah en fait, si j'arrete le service et que je le redemarre sans faire la manip' que j'ai décrite, bah ça marche pas. De plus, lorsque je crée le service, je ne le démarre pas tout de suite. je lui "donne" l'accès au bureau, et le démarre enuite, mais sans résultat... Est-ce que tu pourrais faire un essai chez toi ? Que je sache si ça viens de chez moi ou pas ? Merci pour ta réponse en tout cas ! |
|
|
|
|
|
#4 (permalink) |
|
Invité de passage
![]() Date d'inscription: octobre 2007
Messages: 7
|
Je viens de me rendre compte que après avoir fait cette "manip", la base de registre est quasi-pas modifiée : seule la clef "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\RNG" est différente, mais je pense pas que c'est sur cette valeur qu'il faille jouer. Sa valeur change tout le temps ; à mon avis elle n'a rien à voire avec mon problème.
J'ai aussi remarqué que si j'ai fait la "manip", après un redémarrage du pc ça marche encore. Il doit donc y avoir une info écrite sur le disque quelque part. Quelqu'un connaitrait un logiciel ou une façon de faire pour savoir si c'est le cas ; et, si oui, localiser cette info ? Merci de votre aide ! |
|
|
|
|
|
#5 (permalink) |
![]() Date d'inscription: juillet 2007
Localisation: Paris XX
Âge: 30
Messages: 1 206
|
il te suffirait d'installer ton service avec le flag SERVICE_INTERACTIVE_PROCESS
voici une librarie de gestion de services windows qui te permettra de gérer beaucoup plus simplement et efficament tes services : [Source] [C] Librairie d'encapsulation de Services Windows |
|
|
|
|
|
#6 (permalink) |
|
Invité de passage
![]() Date d'inscription: octobre 2007
Messages: 7
|
Arf, je crois que tu n'a pas tout lu
![]() Lorsque je crée mon service, je lui affecte le droit d'interagir avec le bureau (flag SERVICE_INTERACTIVE_PROCESS) par modification de la clef ad-hoc dans la BDR (ou bien manuellement dans les propriétés du service dans services.msc). Mais tout se passe comme si ce "flag" n'était pris en compte que lorsque je fait "appliquer" ou "ok" dans les propriétés du service (dans services.msc). Ce qui m'embête parce que j'ai pas envie de faire ça sur les x ordis du réseau.Il me faut bien-sûr également redémarrer le service. Est-ce que je suis le seul à avoir ce problème ? |
|
|
|
|
|
#7 (permalink) |
|
Invité de passage
![]() Date d'inscription: octobre 2007
Messages: 7
|
Pour bien comprendre et aussi pour faire un essai chez vous, histoire que je sois sûr que ça vienne pas de moi :
http://www.mwoua.ovh.org/index_fichiers/_service.zip Dans ce répertoire, y'a ce qu'il faut pour installer un sevice qui ne fait qu'ouvrir une commande DOS, désinstaller ce service proprement ( Vous l'aurez compris, j'ia besoin de vous !!! Si chacun pouvait faire l'essai, et me dire si ça fait pareil que chez moi... Merci !!!! Dernière modification par Guardian 31/10/2007 à 16h26. Motif: Majuscules |
|
|
|
|
|
#8 (permalink) |
![]() Date d'inscription: juillet 2007
Localisation: Paris XX
Âge: 30
Messages: 1 206
|
bon,
c'est de la bidouille (instsrv,srvany et cie...) !!! Ne sois pas étonné que cela ne fonctionne pas, surtout pour lancer un bat ... j'ai essayé, ca marche pas chez moi (Vista Pro). si tu a fais un "petit progamme" comme tu dis, utilise l'api Windows ou la librairie que je t'ai indiqué... |
|
|
|
|
|
#9 (permalink) |
|
Invité de passage
![]() Date d'inscription: octobre 2007
Messages: 7
|
Bah non, c'est pas de la bidouille
instsrv et srvany sont donnés par Microsoft pour enregistrer un progamme comme serveur. Sinon, ça marche pas chez toi en faisant l'installation complète ? Et en cochant manuellement l'option, ça marche ? Le problèmé concernant la lib que tu m'a passée, c'est que programme pas en c, mais en "purebasic". Je crée un exe et après je l'enregistre en tant que service garce à instsrv et srvany. |
|
|
|
|
|
#10 (permalink) |
|
Invité de passage
![]() Date d'inscription: octobre 2007
Messages: 7
|
Bon, puisque tout le monde est en vacances (
J'ai créé un service avec PureBasic (le logiciel de programmation que j'utilise), et pas transformé un exe en service avec la methode que donne microsoft. N'empèche que j'aimerai bien savoir pourquoi la 1ère méthode ne marche pas En tout cas, merci à tous |
|
|
|
![]() |
![]() |
||
service windows et l'option "interaction avec le bureau"
| ||
| Outils de la discussion | |
|
|