Passwort geschützt

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Green Snake
Beiträge: 1394
Registriert: 22.02.2005 19:08

Hallo

Beitrag von Green Snake »

Hallo zusammen

danke für diese informationen.
jedoch ist es nicht schlimm, da, wenn mann das richtige passwort eingibt, dann kommt sowiso nur ein mini-game

aber trotzdem danke für eure hilfe
-.-"
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Hallo

Beitrag von Kiffi »

> jedoch ist es nicht schlimm, da, wenn mann das richtige passwort eingibt,
> dann kommt sowiso nur ein mini-game

es kann aber sein, dass Du später mal ein Programm mit 'richtigem'
Passwortschutz schreiben möchtest. Und dann ist es von Vorteil, wenn Du
Dich an die in diesem Thema gegebenen Antworten erinnern würdest.

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
Green Snake
Beiträge: 1394
Registriert: 22.02.2005 19:08

Passwort in Gadget

Beitrag von Green Snake »

Hallo

habe folgenden code

Code: Alles auswählen



OpenWindow(0,450,300,300,200,#PB_Window_SystemMenu,"Passwort")
  
  If CreateGadgetList(WindowID())
    ButtonGadget(1,95,100,100,20,"Bestätigen")
    TextGadget(2,50,20,190,20,"Bitte geben Sie den Zugriffs - Code ein.",#PB_Text_Center)
    StringGadget(3,50,50,190,20,"Hallo",#PB_String_Password | #PB_Text_Center) 
  EndIf
  
  Repeat
    EventID = WaitWindowEvent()
    If EventID = #PB_Event_CloseWindow 
      Quit = 1
    EndIf
    
    If EventID = #PB_Event_Gadget
      
      If EventGadgetID()=1 
        MessageRequester("Hier kommt ein text rein",0)
      EndIf
     
      EndIf
  Until Quit=1

End
so, jetzt möchte ich, dass wenn im passwort geschützdem gadget also im stringgadget 12345 eingegeben wird, un dann auf ok gedrückt wird, sollte das programm einfach weiter laucfen, wenn das falsch ist, soll ein messagerequester kommen,mit der aufforderung, das passwort noch mal einzugeben

wie mache ich das??

hoffe auf antwort

danke im voraus
-.-"
Benutzeravatar
Green Snake
Beiträge: 1394
Registriert: 22.02.2005 19:08

?

Beitrag von Green Snake »

Hallo

ich weis nicht, ob ihr meine frage nicht verstanden habt, oder ob sie einfach untergetaucht ist...jedenfalls
wie kann ich eben machen, das der knopfgadget wenn er gedrückt wird, nachprüft, ob im stringgadget der text 12345 steht?
wenn das der fall ist (wenn 12345 sthet) dann soll der programmcode einfach normal weiterlaufen, wenn nicht, dann sollte eine messagerequester kommen.

wie realisier ich das?
-.-"
Benutzeravatar
125
Beiträge: 1322
Registriert: 19.09.2004 16:52
Wohnort: Neu Wulmstorf (Hamburg)
Kontaktdaten:

Re: ?

Beitrag von 125 »

Naja in deiner Mainschleife:

Case #ButtonDingens
If GetGadgetText(#Buttondingens)="12345"
Else
MessageRequester("ALERT","ALERT)
EndIf
Bild
BildDas ist Tux. Kopiere Tux in deine Signatur und hilf ihm so auf seinem Weg zur Weltherrschaft.
Leo
Beiträge: 420
Registriert: 26.10.2004 18:26

Beitrag von Leo »

Code: Alles auswählen

OpenWindow(0,450,300,300,200,#PB_Window_SystemMenu,"Passwort") 
  
If CreateGadgetList(WindowID()) 
    ButtonGadget(1,95,100,100,20,"Bestätigen") 
    TextGadget(2,50,20,190,20,"Bitte geben Sie den Zugriffs - Code ein.",#PB_Text_Center) 
    StringGadget(3,50,50,190,20,"Hallo",#PB_String_Password | #PB_Text_Center) 
EndIf 

Password$ = "12345"
  
Repeat 
    EventID = WaitWindowEvent() 
    If EventID = #PB_Event_CloseWindow 
        Quit = 1 
    EndIf 
    
    If EventID = #PB_Event_Gadget 
        
        If EventGadgetID()=1 
            If GetGadgetText(3) = Password$ 
                Quit = 1
            Else
                MessageRequester("Leider Falsch!","Du hast ein falsches Passwort eingegeben..."+#CRLF$+"Versuch es nocheimal!")
            EndIf
        EndIf 
        
    EndIf 
Until Quit=1 

;Hier gehts weiter mit deinem Programm
MessageRequester("Juhu","Passwort richtig eingegeben ;)")
MessageRequester("Programm","Programm")

End
Benutzeravatar
Green Snake
Beiträge: 1394
Registriert: 22.02.2005 19:08

Super

Beitrag von Green Snake »

super, es geht
vielen dank
-.-"
Benutzeravatar
Green Snake
Beiträge: 1394
Registriert: 22.02.2005 19:08

Datei speicherung

Beitrag von Green Snake »

hallo

ich will mein passwort schutz noch etwas erwitern.
darum frag ich:

habe schon die hilfe und diverse tutorials durchsucht.
ich will, das wenn das passwort richtig ist, das dan eine txt datei erstellt wird, mirt dem text 12345678900987654321 dann nimmt das programm seinen gewohnten lauf........
beim nächsten mal, wenn der user das proramm startet, soll das programm zuerst prüfen, ob die txt datei vorhanden ist, wenn ja, soll das programm prüfen, ob der inhalt der txt = 12345678900987654321 entspricht, wenn ja, soll sich der passwort dialog gar nicht mehr öffnen, sondern gleich beim programm weiterfahren.
ist die txt nicht vorhanden, startet das programm nochmls beim passwort eingabe.

ich hoffe ihr habt meine frage vestanden.
falls nicht, dan fragt bitte nach, es ist mir sehr wichtig, das meine frage funtionniert

(habe das game ein paar beta-tester gegeben, die haben gesagt ich soll es so machen)

gruss the green snake
-.-"
Leo
Beiträge: 420
Registriert: 26.10.2004 18:26

Beitrag von Leo »

Kannst mal das hier versuchen, ist natürlich sehr unsicher...

Code: Alles auswählen

;Gucken ob eine passwort.txt existiert
;und gucken ob die richtige Zahl drinn steht
If FileSize("passwort.txt") <> -1
    If ReadFile(0,"passwort.txt")
        If ReadString() = "12345678900987654321"
            PasswordWas = 1
        Else
            PasswordWas = 0
        EndIf
        CloseFile(0)
    Else
        PasswordWas = 0
    EndIf
Else
    PasswordWas = 0
EndIf

;Wenn die Datei nicht existiert oder die falsche Zahl drinn steht
If PasswordWas = 0
    OpenWindow(0,450,300,300,200,#PB_Window_SystemMenu,"Passwort") 
    
    If CreateGadgetList(WindowID()) 
        ButtonGadget(1,95,100,100,20,"Bestätigen") 
        TextGadget(2,50,20,190,20,"Bitte geben Sie den Zugriffs - Code ein.",#PB_Text_Center) 
        StringGadget(3,50,50,190,20,"Hallo",#PB_String_Password | #PB_Text_Center) 
    EndIf 
    
    Password$ = "12345827ccb0eea8a706c4c34a16891f84e7b"
    
    Repeat 
        EventID = WaitWindowEvent() 
        If EventID = #PB_Event_CloseWindow 
            Quit = 1 
        EndIf 
        
        If EventID = #PB_Event_Gadget 
            
            If EventGadgetID()=1 
                If MD5Fingerprint(GetGadgetText(3),Len(GetGadgetText(3))) = Password$ 
                    Quit = 1 
                    ;Speichern
                    If CreateFile(0,"passwort.txt")
                        WriteStringN("12345678900987654321")
                        CloseFile(0)
                    EndIf
                Else 
                    MessageRequester("Leider Falsch!","Du hast ein falsches Passwort eingegeben..."+#CRLF$+"Versuch es nocheimal!") 
                EndIf 
            EndIf 
            
        EndIf 
    Until Quit=1 
    CloseWindow(0)
EndIf 

;Hier gehts weiter mit deinem Programm 
MessageRequester("Programm","Programm") 

End
Benutzeravatar
Green Snake
Beiträge: 1394
Registriert: 22.02.2005 19:08

Cool, danke

Beitrag von Green Snake »

super, es funktioniert

danke euch allen
-.-"
Antworten