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

C# Discussion :

[C# 2.0] Comment bloquer le lancement d'une application ?


Sujet :

C#

  1. #1
    Expert éminent
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Points : 7 660
    Points
    7 660
    Par défaut [C# 2.0] Comment bloquer le lancement d'une application ?
    Bonjour,

    Je cherche à bloquer le lancement d'une application suivant certaines conditions.

    L'application peut être lancée depuis le réseau, je ne suis donc pas limité au poste local. Je dois donc dans un premier temps me limiter à une instance maximum par poste (ca c'est relativement facile en me basant sur la liste des process) et ensuite vérifier par rapport au réseau et c'est là que ca se complique.

    Il faut savoir que mon application utilise des APIs et que c'est dernières utilisent des fichiers de configuration qui stockent différents chemins. Une fois que l'application est lancée (les fichiers de config sont mis à jour en fonction du chemin de démarrage de l'appli) je ne dois pas autoriser une seconde instance en local (ca, ca va) et je dois également bloquer l'application si elle est lancée depuis un autre poste, mais uniquement si son chemin de démarrage est différent de celui de la première instance de l'application (car cela implique une modification des fichiers de configuration rendant l'instance précédente instable).

    Vu ce beau bordel, dans un premier temps je souhaite limiter à une instance de l'application sur tout le réseau, pour être dans le cas le plus restrictif, avant d'aller plus loin.

    Donc comment gérer ce dernier cas ? Car je ne sais pas comment faire, surtout que si l'application venait à planter il ne faut pas que cela empêche le lancement d'une nouvelle instance.

    Merci de vos conseils.

  2. #2
    Rédacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Points : 6 017
    Points
    6 017
    Par défaut
    Salut .

    tu peux toujours passer par un fichier accessible depuis n'importe ou sur le réseau et tu met dedans l'heure de lancement, et l'heure du dernier update que tu fait toute les 10 mn par exemple. Pourquoi une heure d'update ? tout simplement pour qu'en cas de crash les applications qui essai de se lancer puisse se dire :

    Eh ! mais l'app qui a créé ce fichier ne l'a pas mis à jour depuis 30 mn ... elle est surement morte, je peux donc l'utiliser ...
    Sinon, il y a la méthode bcp plus classe mais qui demande un serveur : tu fait un service web que tes applications interroge.

    ou encore mieux tu fait un serveur en remoting qui va autoriser ou non ton app à se lance et une fois lancé qui va vérifier en faisant simplement un hello world qu'elle est toujours en fonctionnement.

    voila ce sont des idées ...

Discussions similaires

  1. Comment bloquer l'utilisation d'une application ?
    Par luc2verga dans le forum Windows Forms
    Réponses: 4
    Dernier message: 10/02/2011, 09h47
  2. Comment annuler le lancement d'une application
    Par melleb dans le forum Windows Forms
    Réponses: 8
    Dernier message: 07/05/2008, 11h29
  3. Réponses: 5
    Dernier message: 23/07/2007, 12h24
  4. Comment bloquer un bouton avec une condition
    Par geeksideofme dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 13/06/2007, 20h29
  5. Bloquer le lancement de mon application plusieurs fois
    Par marseillais57 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 30/12/2005, 11h51

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