VB.NET Loginsytsem

08/06/2013 19:36 BestBlitzcrank#1
Hey Leute,
Ich hab mir einen Login System gemacht mit Username und Password.
Und auch eine Registrierung.

So meine Sache:

Nach dem Login kommt man zu einer anderen Form und da hab ich beim Label : Willkommen geschrieben, aber es soll auch den Benutzernamen(Id//Username) schreiben. Aber es schreibt nur selten es hin oder es schreibt es 10Sekunden später hin..

Der Code:

Private Sub Label1_Click(sender As System.Object, e As System.EventArgs) Handles Label1.Click
Label1.Text = "Welcome," & My.Settings.User & "!"

schreibt pls die Lösung oder gibt Tipps.
08/06/2013 20:43 .Lol#2
Quote:
C++ Loginsytsem
Quote:

Private Sub Label1_Click(sender As System.Object, e As System.EventArgs) Handles Label1.Click
Label1.Text = "Welcome," & My.Settings.User & "!"
Selbstgeschrieben in C++? Aha...
08/06/2013 20:56 MrSm!th#3
#moved
08/07/2013 09:11 SwarN#4
Du machst einen Konstrukter der aufgerufenen Form der einen Benutzernamen verlangt,
rufst die Form mit diesem Konstruktor auf setzt eine Membervariable und hast so immer Zugriff auf den Benutzer namen kurz um siehts dann so aus deine neue Form nach dem Login:

Code:
Public Class FrmMain

    Private m_BenutzerName As String

    Public Sub New(ByVal BenutzerName As String)

        ' Dieser Aufruf ist für den Windows Form-Designer erforderlich.
        InitializeComponent()

        ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
        m_BenutzerName = BenutzerName

        ' Oder im Form Load Ereignis dann:
        Label1.Text = "Welcome," & BenutzerName & "!" 
       
    End Sub

   
End Class
Aufruf aus deinem LoginButton:

Code:
Public Class FrmLogin

    Private Sub btn_Login(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_Login.Click
          Dim BenutzerName As String = txt_BName.Text ' Ich nehme jetzt mal an du hast den Benutzernamen in ner Textbox die ich einfach mal so benannt habe

          ' Natürlich vorher deine Prüfroutinen und dann danach der Form aufruf:
          Dim f as new FrmMain(BenutzerName)
          Me.Hide()
          f.ShowDialog()
          Me.Close()

    End Sub

   
End Class


Im übrigen kannst es natürlich auch mit Einstellungen machen, wenn du das beherrscht.


Dazu kommt du hast deinem Label das zugewiesen bei einem "Label.Click" Event.
Nicht bei einem FormLoad oder irgendwas sinnvollem
08/07/2013 16:40 .Kirataro#5
1. Loginsysteme nur mit VB.net sind mehr als unsicher (je nachdem ob du das Teil releasen willst o. nicht). Falls du trotzdem eins brauchst, empfehle ich dir, zusammen mit PHP und MySQL zu arbeiten.

Da dies nicht deine Fragestellung war,
2. Kannst du den usernamen auch in einer Variablen speichern und diese dann im Willkommensscreen einsetzen.
08/07/2013 17:33 P00w#6
Wenn du eine Form 1 & 2 hast

Und bei der Form 1 ist das Login Fenster (z.B Benutzername ist die Textbox1)

Dann kannst du bei der zweiten form auch schreiben:

Label1.Text = "Welcome," & form1.textbox1.text & "!"
08/07/2013 22:42 'Heaven.#7
Quote:
Originally Posted by Solution™ View Post
1. Loginsysteme nur mit VB.net sind mehr als unsicher (je nachdem ob du das Teil releasen willst o. nicht). Falls du trotzdem eins brauchst, empfehle ich dir, zusammen mit PHP und MySQL zu arbeiten.

Da dies nicht deine Fragestellung war,
2. Kannst du den usernamen auch in einer Variablen speichern und diese dann im Willkommensscreen einsetzen.
Und in nativem Code sind die Daten von der Datenbank sicherer....? :rolleyes:


Generell bedeutet sowas den Tod...Am besten nutzt du wie schon gesagt nen PHP Script,Lua oder irgendwas anderes Serversidemäßiges


Danach obfuscatest du dein Programm mit Confuser(Alle Optionen an+Packer)
08/08/2013 01:44 .Kirataro#8
@'Heaven. : Wieso nativ? Ich meinte doch, man kann VB.net über PHP mit MySQL kommunizieren lassen, so verhindert man Datenbankdaten im VB Code.
08/08/2013 11:06 SwarN#9
Quote:
Originally Posted by P00w View Post
Wenn du eine Form 1 & 2 hast

Und bei der Form 1 ist das Login Fenster (z.B Benutzername ist die Textbox1)

Dann kannst du bei der zweiten form auch schreiben:

Label1.Text = "Welcome," & form1.textbox1.text & "!"
NEIN, NEIN und nochmal NEIN!!!

So wird das nicht gemacht!


Was ist wenn es "form1" mehrfach gibt? Schlag dir das aus dem Kopf, dass ist wieder so ein VB.net nettigkeitsding, dass einfach FALSCH ist!

Mir wird schlecht wenn ich sowas lese,
wenn du keine Ahnung vom Programmieren hast versuch nicht leuten zu helfen...
08/08/2013 17:48 'Heaven.#10
Quote:
Originally Posted by Solution™ View Post
@'Heaven. : Wieso nativ? Ich meinte doch, man kann VB.net über PHP mit MySQL kommunizieren lassen, so verhindert man Datenbankdaten im VB Code.
Okay, dann kam der Teil mit VB etwas andets rüber
08/10/2013 17:29 frostbyyte#11
mit vb ist es nur sehr gering sicher. Du solltest es doppelt sichern bzw. doppelte abfragen einbauen. Php & MySQL wären wie schon gesagt angebracht.. Auf keinen fall solltest du im code irgendwelche infos über den Server bzw. Passwörter schreiben -> Kann man alles herausbekommen :D
08/15/2013 16:58 Acin™#12
Quote:
Originally Posted by 'Heaven. View Post
Danach obfuscatest du dein Programm mit Confuser(Alle Optionen an+Packer)
Unnötig.
Selbst de4dot macht dies komplett rückgängig.
08/15/2013 22:52 'Heaven.#13
Quote:
Originally Posted by -Rainbow View Post
Unnötig.
Selbst de4dot macht dies komplett rückgängig.
Unnötig bist du^^

de4dot failed bei confuser...Auerdem kannste auch nen bisschen an der source rumspielen, dass die ganzen tuts von 0xd4d nichtmehr gehen...
08/15/2013 23:54 tolio#14
stimmt, aber dann kann mans immernoch per hand entpacken ^^
gibts auch genug tuts für
08/17/2013 10:56 MrSm!th#15
^Also einigen wir uns darauf, dass nichts unknackbar ist, worauf der Benutzer physischen Zugriff hat :rolleyes: