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

VB.NET Discussion :

Timer enabled meme aprés la fermeture de l'application


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Inscrit en
    Mars 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 3
    Par défaut Timer enabled meme aprés la fermeture de l'application
    Bonjour,

    Je suis entrain de développer une application où j'ai utilisé un système d'authentification, celle ci ce bloque après 3 échec de connexion, je voudrais alors que l'utilisateur ne puisse réessayer qu'après une certaine durée de temps.

    Est ce que c'est possible d'avoir une alternative d'un Timer qui continuer à exécuter des évènements avec un intervalle précis même après la fermeture de l'application, puisque la contournation de l'utilisation de la date système est facile.

    Merci d'avance.

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2008
    Messages : 94
    Par défaut
    Bonjour,

    J'ai une solution un peu tordue à te proposer.
    Pour celle-ci, il te faut une BDD avec une table pour tes utilisateurs. (Je supposes que c'est le cas, car ta connexion doit être en fonction de son login et mot de passe enregistrés en BDD, non ?)
    - Tu ajoutes une champ DateTime à cette table : HeureDernierEchec.
    Quand l'utilisateur essaie de se connecter, si Now < HeureDernierEchec + Delai, alors tu avertit l'utilisateur du problème (MessageBox) et tu refermes l'application.
    Si tu connais le login de l'utilisateur à l'ouverture de l'application (exemple : login utilisateur windows), tu peux aussi fermer l'application à l'ouverture.

    NB : Tu ne pourras pas avoir un timer de ton application, si celle-ci est fermée.

  3. #3
    Candidat au Club
    Inscrit en
    Mars 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 3
    Par défaut
    Citation Envoyé par cougarg Voir le message
    Bonjour,

    J'ai une solution un peu tordue à te proposer.
    Pour celle-ci, il te faut une BDD avec une table pour tes utilisateurs. (Je supposes que c'est le cas, car ta connexion doit être en fonction de son login et mot de passe enregistrés en BDD, non ?)
    - Tu ajoutes une champ DateTime à cette table : HeureDernierEchec.
    Quand l'utilisateur essaie de se connecter, si Now < HeureDernierEchec + Delai, alors tu avertit l'utilisateur du problème (MessageBox) et tu refermes l'application.
    Si tu connais le login de l'utilisateur à l'ouverture de l'application (exemple : login utilisateur windows), tu peux aussi fermer l'application à l'ouverture.

    NB : Tu ne pourras pas avoir un timer de ton application, si celle-ci est fermée.
    Oui c'est le cas j'ai une BDD pour les utilisateurs, sinon ta solution ne marchera pas si l'utilisateur change la date et l'heure système, merci en tous cas pour ta réponse.

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    948
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 948
    Par défaut
    Oui c'est le cas j'ai une BDD pour les utilisateurs, sinon ta solution ne marchera pas si l'utilisateur change la date et l'heure système, merci en tous cas pour ta réponse.
    Si ta base de données est sur un serveur ca marchera parfaitement. Si elle est en local, pas de solution, à moins d'avoir une connexion internet et de récupérer la date/heure via internet.

  5. #5
    Candidat au Club
    Inscrit en
    Mars 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 3
    Par défaut
    Citation Envoyé par Flamby38 Voir le message
    Si ta base de données est sur un serveur ca marchera parfaitement. Si elle est en local, pas de solution, à moins d'avoir une connexion internet et de récupérer la date/heure via internet.
    Oui c'est ça le problème, mon application sera installée sur deux pc, un des deux contiendra le serveur BDD, et il n'y aura pas de connexion internet

  6. #6
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    Il y a la solution qui consiste à lancer après un echec de connexion dans l'appli principale une appli invisible, avec un timer activé dont l'intervalle est égal au temps de blocage et qui, sur l'event timer, se termine. L'appli principale teste si l'appli invisible existe avant d'autoriser une nouvelle tentative de connexion.

    Pour rendre l'appli invisible, qqchose comme ceci (à traduire en C#):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    BorderStyle = None ;
    Size = new Size(0,0) ; 
    ShowInTaskbar = false ;
    ...
    // In the Form Load event
    WindowState=Minimized Hide() ;
    Pour interdire la suppresssion de l'appli invisible par le gestionnaire de tâche, essayer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    private void Form1_FormClosing(object sender, FormClosingEventArgs e)
    {
        e.Cancel = true;
    }

Discussions similaires

  1. Réponses: 1
    Dernier message: 05/06/2007, 20h54
  2. Réponses: 8
    Dernier message: 04/03/2007, 02h08
  3. Forcer de tuer un process après fermeture d'une applic!
    Par _shuriken_ dans le forum Windows XP
    Réponses: 14
    Dernier message: 26/01/2007, 15h27
  4. Réponses: 2
    Dernier message: 29/08/2006, 16h27
  5. fermeture d'une application après un temp d'inactivité?
    Par sitdown dans le forum Autres Logiciels
    Réponses: 1
    Dernier message: 24/08/2005, 15h44

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