IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Problème python lancer un .exe dans son service windows python


Sujet :

Python

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Mars 2010
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Problème python lancer un .exe dans son service windows python
    Bonjour tout le monde,

    Je me suis fait un service python qui ecoute un port quand une reponse est repéré il lance un .exe avec une question oui ou non ...

    Mon probleme est que je vois bien mon exe se lancer dans le gestionnaire des tache mais je ne vois pas l'interface avec la pop up voici mon code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
     
    '''
     
     Author: Alex Baker
     Date: 7th July 2008
     Description : Simple python program to generate wrap as a service based on example on the web, see link below.
     
     http://essiene.blogspot.com/2005/04/python-windows-services.html
     
     Usage : python aservice.py install
     Usage : python aservice.py start
     Usage : python aservice.py stop
     Usage : python aservice.py remove
     
     C:\>python aservice.py  --username <username> --password <PASSWORD> --startup auto install
     
    '''
     
     
     
    import win32service 
    import win32event 
    import win32evtlog 
    import win32evtlogutil 
    import win32serviceutil 
    import win32process 
    import ConfigParser 
    import time, os, sys
    import json
    import urllib
    from Tkinter import *
     
     
    class aservice(win32serviceutil.ServiceFramework):
     
    	_svc_name_ = "AlfrescoListener"
    	_svc_display_name_ = "AlfrescoListener"
    	_svc_description_ = "AlfrescoListener"
    	start_cmd = r"C:\Python26\dist\Alfrescolistener.exe"
    	def __init__(self, args):
    		win32serviceutil.ServiceFramework.__init__(self, args)
    		self.hWaitStop = win32event.CreateEvent(None, 0, 0, None)           
     
    	def SvcStop(self):
    		self.ReportServiceStatus(win32service.SERVICE_STOP_PENDING)
    		win32event.SetEvent(self.hWaitStop)                    
     
    	def SvcDoRun(self):
    		self.DoBatch()
     
    	def createProcess(self, cmd):
    		return win32process.CreateProcess(
    		None, cmd, None, None, 0, 0, None, None,
    		win32process.STARTUPINFO())
     
     
    	def DoBatch (self):
    		import socket
    		import servicemanager
    		serversocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    		serversocket.bind((socket.gethostname(),5454))
    		serversocket.listen(5)
    		while 1 :
    			if serversocket.accept() :
    				info = self.createProcess(self.start_cmd)  
     
    def ctrlHandler(ctrlType):
       return True
     
    if __name__ == '__main__':   
       win32api.SetConsoleCtrlHandler(ctrlHandler, True)   
       win32serviceutil.HandleCommandLine(aservice)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    import socket
    import json
    import urllib
    from Tkinter import *
     
    def reponse():
        print json.dumps({"reponse" : "true", "ip" : socket.getaddrinfo(socket.gethostname(), None)[0][4][0]})
        urllib.urlopen("http://www.google.fr")
        fen1.destroy()
     
    serversocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    #Creation de la fenetre
    fen1 = Tk()
    #Titre de la fenetre
    fen1.title("Alfresco Notification Listener");
    #Question pour notification
    txt1 = Label(fen1, text ="Envoyer une notification ?")
    #Creation des boutons
    b1 = Button(fen1, text ='Oui', command=reponse)
    b2 = Button(fen1, text ='Non',command=fen1.destroy)
    #Mise en place du logo alfresco
    can1 = Canvas(fen1, width =150, height =150, bg ="white")
    #Disposition des differents elements
    txt1.grid(row =1, sticky =E)
    b1.grid(row =1, column =2,sticky =E, padx =10)
    b2.grid(row =1, column =3,sticky =E, padx =5)
    can1.grid(row =1, column =4, rowspan =3, padx =10, pady =5)
    #Afficher la fenetre
    fen1.mainloop()

  2. #2
    Membre régulier Avatar de will97
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    126
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2007
    Messages : 126
    Points : 80
    Points
    80
    Par défaut
    Executer > services.msc > Clique droit sur ton service > Proprietes > Onglet 2
    puis soit tu coche la case autoriser
    ou
    tu specifis ton utilisateur et mdp

Discussions similaires

  1. [Débutant] Lancer un .exe depuis un service windows.
    Par egautier18 dans le forum C#
    Réponses: 5
    Dernier message: 27/03/2014, 15h02
  2. Lancer une méthode dans un service windows
    Par vincikito dans le forum C#
    Réponses: 10
    Dernier message: 15/02/2013, 09h24
  3. [WINDEV 8] Lancer un exe dans une fenetre windev
    Par momobulle dans le forum WinDev
    Réponses: 7
    Dernier message: 30/08/2007, 13h42
  4. Lancer un .exe dans une webmethode
    Par renitou dans le forum Services Web
    Réponses: 2
    Dernier message: 18/07/2007, 19h07
  5. Problème pour lancer le exe
    Par Clemsgc dans le forum Autres éditeurs
    Réponses: 2
    Dernier message: 11/05/2007, 09h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo