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

Langage Perl Discussion :

Application sans multi-session


Sujet :

Langage Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 66
    Par défaut Application sans multi-session
    Bonjour,

    Je travaille sur une application TK. Je souhaiterai que cette application ne soit accessible qu'à une personne à la fois (pas de multi-session).
    Comment je peux procéder pour vérouiller l'ouverture de l'application si une autre personne l'a déjà ouverte?

    Merci,
    Lucie

  2. #2
    Membre Expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 603
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2003
    Messages : 1 603
    Par défaut
    Citation Envoyé par Luciefer
    Bonjour,

    Je travaille sur une application TK. Je souhaiterai que cette application ne soit accessible qu'à une personne à la fois (pas de multi-session).
    Comment je peux procéder pour vérouiller l'ouverture de l'application si une autre personne l'a déjà ouverte?

    Merci,
    Lucie
    Sans faire un truc un poil compliqué, tu pourrais gérer les ouvertures de l'appli Tk via un fichier de conf (ou de log) dans lequel la dernière ligne du fichier contiendrait soit "DEMARRE", soit "NON UTILISE".

    Quand ton appli Tk démarre, elle écrirait "DEMARRE" dans ce fichier et tant que l'utilisateur n'aurait pas fermé l'appli, rien ne viendrait mettre à jour ce fichier en y écrivant "NON UTILISE".

    C'est une méthode barbare, je le reconnais mais j'ignore si en passant par les PID de ta machine on soit capable de reconnaître des processus différents autour du même script Perl. Tu peux évidemment récupérer tous les process faisant appel à perl.exe mais les différencier en fonction des programmes qu'ils lancent, ça je ne suis pas persuadé que ce soit faisable.

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 66
    Par défaut
    Bonjour,

    C barbare mais ça fonctionne nickel, adopté :o)

    Merci,
    Lucie

  4. #4
    Membre Expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 603
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2003
    Messages : 1 603
    Par défaut
    Citation Envoyé par Luciefer
    Bonjour,

    C barbare mais ça fonctionne nickel, adopté :o)

    Merci,
    Lucie
    Oui mais attention : as-tu un bouton fermant l'appli Tk ?

    Il te faudrait un bouton "fermer" qui, en plus de quitter l'appli, écrirait dans le fichier log.

    Et si c'est faisable, enlève la barre de titre de ton appli dans laquelle se trouvent les mini-icones pour réduire/agrandir/fermer la fenêtre.

    Si jamais un de tes users clique sur la petite croix en haut à droite de ton appli, la fonction associée à ton bouton "Fermer" ou "Quitter" ne fera pas son taf et ton programme refusera de se lancer en prétextant que quelqu'un l'utilise toujours.

    Par contre, pour l'avoir déjà fait, retirer la barre de titre donne une fenetre toute moche

  5. #5
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 66
    Par défaut
    J'ai fait mieux, j'ai géré la croix de l'appli comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    my $application=new MainWindow();
    $application->protocol('WM_DELETE_WINDOW',\&Quitter_application);
     
    sub Quitter_application(){
        #Tous les traitements à effectuer lorsque je quitte l'application....
    }
    Voilà voilà :o)
    Merci
    Lucie

  6. #6
    Membre Expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 603
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2003
    Messages : 1 603
    Par défaut
    Impec alors

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Lancement application sans ouverture de session
    Par menfoutix dans le forum Général Dotnet
    Réponses: 35
    Dernier message: 07/05/2015, 09h56
  2. Réponses: 2
    Dernier message: 26/05/2014, 19h05
  3. Application multi sessions
    Par wrapx dans le forum ASP.NET MVC
    Réponses: 5
    Dernier message: 30/09/2010, 11h50
  4. Réponses: 2
    Dernier message: 15/05/2004, 18h33
  5. Réponses: 4
    Dernier message: 04/04/2004, 13h59

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