VB Form2 Nach Passowrt Schließen

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von OttoVB.

    VB Form2 Nach Passowrt Schließen

    Hallo Forum!
    Ich habe eine kleine Frage!
    Ich habe mir ein Programm mit VB gemacht und es soll mit einem Passwort geschützt sein!
    Also Form1 ist Disable und Form2 mit Passworteingabe zeigt sicht.
    Nach passworteingabe verschwinden Form2 und Form1 is Enabled.
    Das habe ich!
    Ich will aber nun das Form 2 Beim Starten des Programmes Nie wieder kommt!
    Also nur 1 mal das Passwort eingeben und dann nie wieder
    Wie mache ich das!
    Es Sieht zur Zeit so aus!

    Form2 Button:

    VB.NET-Quellcode

    1. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    2. If TextBox1.Text = "xxxxx" Then
    3. MsgBox("Erfolgreich")
    4. Form1.Enabled = True
    5. Else
    6. MsgBox("Falscher Key")
    7. End If
    8. End Sub



    Edit by Manschula: Willkommen im Forum. Achte bitte darauf, dass du deine Themen im richtigen Unterforum postest (Beschreibung lesen!); für Code-Ausschnitte bitte den entsprechenden Tag verwenden --> Thema aus dem Offtopic-Bereich verschoben; VB-Tag eingefügt

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Manschula“ ()

    hi, erstmal willkommen im forum.

    mach doch folgendes:

    nimm eine inputbox im formload event der Form1, wo du dein passwort abfragst.

    VB.NET-Quellcode

    1. Dim BoolPasswort As Boolean = False
    2. Do While BoolPasswort <> True
    3. Dim PasswortAbfrage = InputBox("Bitte Passwort eingeben:", "Passwortabfrage")
    4. If PasswortAbfrage <> "<DeinPasswort>" Then
    5. MsgBox("Das angegebene Passwort ist leider Falsch. Versuchs nochmal :)", MsgBoxStyle.Critical, "UPS")
    6. Else
    7. MsgBox("PasswortRichtig")
    8. BoolPasswort = True
    9. End If
    10. Loop


    wenn du es global nutzen willst, sprich nur einmalige abfrage ( insgesamt solange das programm installiert ist )
    speicherst du eine textdatei ab, und überprüfst ob die entsprechende Datei vorhanden ist oder nicht
    also dann so:

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    3. If IO.File.Exists(My.Application.Info.DirectoryPath & "\qwertz.txt") Then
    4. MsgBox("Passwort wurde schonmal eingegeben")
    5. Else
    6. Dim BoolPasswort As Boolean = False
    7. Do While BoolPasswort <> True
    8. Dim PasswortAbfrage = InputBox("Bitte Passwort eingeben:", "Passwortabfrage")
    9. If PasswortAbfrage <> "<DeinPasswort>" Then
    10. MsgBox("Das angegebene Passwort ist leider Falsch. Versuchs nochmal :)", MsgBoxStyle.Critical, "UPS")
    11. Else
    12. IO.File.Create(My.Application.Info.DirectoryPath & "\qwertz.txt")
    13. MsgBox("PasswortRichtig")
    14. BoolPasswort = True
    15. End If
    16. Loop
    17. End If
    18. End Sub
    19. End Class


    aber das ist unsicher. du solltest irgendwas besonderes dort reinschreiben was nur dein programm lesen kann.
    das ist lediglich die einfachste möglichkeit.

    gruß

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Annoxoli“ ()

    Dann musst Dir nach erfolgreicher Passworteingabe eben merken, dass das Passwort schon einmal richtig eingegeben worden ist. Entweder Du speicherst es iwo in einer Textdatei (unsicher), Du nutzt My.Settings und setzt dort ein Flag (auch unsicher), Du nutzt die Registry (auch nicht wirklich sicher).

    Ich mein, welchen Sinn hat denn ein Passwortschutz, wenn ich das nur 1x eingeben muss und dann nie wieder? Aber das Prinzip sollte Dir klar sein. Du musst Dir irgendwie und irgendwo merken, dass die Eingabe schon erfolgt ist.
    Die Unendlichkeit ist weit. Vor allem gegen Ende. ?(
    Manche Menschen sind gar nicht dumm. Sie haben nur Pech beim Denken. 8o
    Wie mache ich das denn da wen ich auf Abbrechen klicke das es auch Abbricht oO

    Aber Danke! Super Idee

    Bin noch Anfänger ^^"
    Und wen ich euch gerad hier habe!
    Wie kann ich das mit einer Exe verbinden!
    Sei es ein Programm machen das zb skype öffnet und davor ebend ein passwort eingeben :o Mag es nicht wen andere bei mir am pc rumfuschen was viele machen und bin an sowas interessiert!
    zur zeit arbeite ich seid 1 woche an n Keybinder
    kann den ja auch nachher ma reinsetzen wie ihr den findet

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Swizzzie“ ()

    Hi,

    gleiche Problem hatte ich auch. Habe eine sehr einfache und gut Funktionierende Lösung.

    Erstell das Projekt und gehe dann in das erstellte Projektverzeichnis /*Projekt*/MyProject und öffne die Apllication.Designer.vb

    Scroll Herunter zu
    OnCreateMainForm()

    füge in diese Prozedur folgende schleife ein:

    VB.NET-Quellcode

    1. If My.Settings.Status = False Then
    2. Me.MainForm = Global.*Project*.Form1
    3. Else
    4. Me.MainForm = Global.Project.Form2
    5. End If

    sodass es wie folgt ausschaut:

    VB.NET-Quellcode

    1. <Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
    2. Protected Overrides Sub OnCreateMainForm()
    3. If My.Settings.Status = False Then
    4. Me.MainForm = Global.*Project*.Form1
    5. Else
    6. Me.MainForm = Global.*Project*.Form2
    7. End If
    8. End Sub

    als weitere musst du nun nur noch das Setting Status in den EInstellung deines Projekts hinzufügen und als String auf False setzen.
    Nach der Passworteingabe, wenn sie gespeichert wurde, musst du dann:
    My.Settings.Status = True

    hinzufügen und fertig.