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 :

Forcer utilisation Windows Form [Débutant]


Sujet :

VB.NET

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Forcer utilisation Windows Form
    Bonsoir,

    Après de longues recherches sur le web, je viens poster cette question:

    Comment faire en sorte que l'utilisateur n'ai d'autres choix que d'utiliser le user form?
    Windows a certaines fenêtres dans ce style, avec un jolie bruit lorsque l’on clique autre part que dans le cadre.

    J'utilise cette fonction pour une appli qui nécessite un mot de passe, sans quoi l'utilisation du reste du logiciel reste bloqué. (Libre à l'utilisateur d'utiliser la croix rouge)
    J'ai fais quelques essais sans succès, je joint bout de code en espérant que ça facilite la compréhension.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
        Private Sub UF1_Deactivate() Handles Me.Deactivate
     
            Me.Hide()
            Threading.Thread.Sleep(100)
            Me.Show()
            Threading.Thread.Sleep(100)
     
            Me.Focus()
     
        End Sub
    Merci, à bientôt
    Alex

  2. #2
    Membre expert
    Avatar de GuruuMeditation
    Homme Profil pro
    .Net Architect
    Inscrit en
    Octobre 2010
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : .Net Architect
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 705
    Points : 3 568
    Points
    3 568
    Par défaut
    si c'est une fenêtre modale que tu cherches, utilises ShowDialog() au lieu de Show()
    Microsoft MVP : Windows Platform

    MCPD - Windows Phone Developer
    MCPD - Windows Developer 4

    http://www.guruumeditation.net

    “If debugging is the process of removing bugs, then programming must be the process of putting them in.”
    (Edsger W. Dijkstra)

  3. #3
    Membre averti
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2013
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2013
    Messages : 235
    Points : 359
    Points
    359
    Par défaut
    Bonjour,
    J'ai pas compris...
    Pourquoi tu fais clignoter la form dans ta sub UF1_Deactivate ???
    A quel moment le mot de passe est demandé?

    A+
    Par nature les mots, ils sont flous, c'est une fois alignés qu'ils se précisent.

  4. #4
    Membre régulier
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2014
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Août 2014
    Messages : 63
    Points : 123
    Points
    123
    Par défaut
    Bonjour,

    Si le MDP est demandé au chargement du programme alors tu à deux possibilité :

    1° Charger le formulaire "form_authentification" en formulaire par défaut puis lorsque l'on clique sur connexion il test le mot de passe puis charge form_user et se ferme
    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
     
    Public Class Form1
     
        Private Sub Button_connexion_Click(sender As System.Object, e As System.EventArgs) Handles Button_connexion.Click
            Dim authentifier As Boolean
            'insert ici ton code d'authentification
            If authentifier = True Then
                Form_user.show()
                Me.Close()
            Else
                MsgBox("login/mdp invalide")
            End If
        End Sub
     
    End Class


    2° Tu a un formulaire_principal qui charge ton form_authentification pour l'authentification en modale (on à pas accès au formulaire_principal tant que le form_authentification est pas fermé)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
        Private Sub Form_principal_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
            'ton code de démarrage
            Form_authentification.showdialog()
        End Sub
    dans ton form_authentification pense a ajouter
    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
     
    Public Class Form_authentification
       dim authentification_ok as boolean 
       Private Sub Form_authentification_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
            authentification_ok = false
        End Sub
     
        Private Sub Button_connexion_Click(sender As System.Object, e As System.EventArgs) Handles Button_connexion.Click
            Dim authentifier As Boolean  
            'insert ici ton code d''authentification
     
            If authentifier = True Then
                authentification_ok = true
                Me.Close()
            Else
                MsgBox("login/mdp invalide")
            End If
     
        End Sub
     
        Private Sub Form_authentification_FormClosing(sender As Object, e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
            if authentification_ok = false then       
                ' On désactive tout les controles sur le form principale car pas autorisé/authentifié
                Form_principal.button1.enabled = false
     
            else
                ' On active tout les controles sur le form principale car autorisé/authentifié
                Form_principal.button1.enabled = true
     
            End if
        End Sub
     
    End Class

    En espérant t'avoir aidé/donné des pistes

    Bonne journée

  5. #5
    Membre averti
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2013
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2013
    Messages : 235
    Points : 359
    Points
    359
    Par défaut
    Re:

    Pourquoi ne pas faire tout simplement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
      Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            If Not InputBox("Mot de passe:", "PASSWORD") = "pass" Then End
        End Sub
    A +
    Par nature les mots, ils sont flous, c'est une fois alignés qu'ils se précisent.

  6. #6
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Tout d'abord je tenais à vous remercier du temps accordé à ce topic.

    Grâce à vos remarques j'ai appris mais, mon soucis n'est pas résolut.
    J'explique la fonction de ce dit log_form:

    Lors du branchement de ma clef usb un autorun démarre le formulaire d'identification. Malheureusement l'utilisateur reste libre de naviguer dans les dossiers du périphérique, c'est pourquoi j'ai pensé a forcer l'utilisateur a rester sur mon user_form.

    D'après mes connaissances en informatique une autre solution s'offre à nous: bloquer d'une quelconque manière l'accès à la clef USB. Mais il me semble qu'avec cette technique on rentre dans les fonctions propre a Windows et ça me semble compliqué.

    Je suis ouvert à d'autres solutions de programme.

    Édit: je m'excuse pour le temps d'attente, ça ping lent chez moi

    Alex

  7. #7
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    1 048
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 048
    Points : 2 201
    Points
    2 201
    Par défaut
    Je comprends pas trop ce que tu veux faire (au plus haut niveau fonctionnel).

    Protéger l'accès aux fichier contenu dans la clé USB tant que le programme n'a pas donner son feu vert (Un peu comme les logiciels de cryptage inclus sur certains modèle de clé usb) ?

    Ce que tu demandes consiste un peu à bloquer le système d'exploitation en entier par ton programme (une sorte de fenêtre modale au niveau de l'OS en plus de l'application). Je ne sais personnellement pas comment faire mais peut être que d'autre pourront te répondre.

    P.S. L'autorun est maintenant désactivé par défaut sur les clés USB dans la plupart des systèmes donc il faut mieux pas trop compter sur ce point.

  8. #8
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Bonjour sinople,

    Tu a compris l'essence de mon idée. Avec un plus, qui est de rajouter une gestion utilisateurs avec un accès contrôlé aux dossiers.

    L'histoire du autorun me chagrine, y a t'il un moyen de réalisé mon projet d'une autre manière?
    Avec un event lors d'un branchement périphérique?
    On m'a également parlé d'une clef registre qui stockerai les "identifiants" du matériel branché aux ports USB. Il doit y avoir un moyen de jouer avec ces paramètres?

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

Discussions similaires

  1. Reference pour utiliser System.Windows.Forms
    Par hibou107 dans le forum C#
    Réponses: 0
    Dernier message: 02/05/2011, 16h07
  2. comment utiliser le windows forms C # et le Rx Framework
    Par coool dans le forum Windows Forms
    Réponses: 2
    Dernier message: 02/05/2011, 10h00
  3. Réponses: 3
    Dernier message: 20/03/2007, 13h30
  4. Réponses: 1
    Dernier message: 12/01/2007, 21h40
  5. [C#] utilisation de la souris dans une windows form
    Par dimmak dans le forum Windows Forms
    Réponses: 2
    Dernier message: 26/03/2006, 23h21

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