Forum | | | | - Page 1 - |
| Andre Hilprecht | Hi, need time again Help. have in my Prog a Adminbereich the only over one einzugebendes Password To achieve his should. working too everything fine - only i want yet achieve the in Edit-area for Passworteingabe The ***** (asterisk) and not the Password in Reinschrift attend. have here already sought but nothing suitable found.
Greeting André |
| | | Ein PC ist die beste Möglichkeit Fehler zu beheben, die ohne PC gar nicht passiert wären. -frei aus Murphy's Computergesetzen
XProfan X2, Win8 Pro 64bit Update von Win7 i5 / 3,2GHz 4 GB RAM Treibstoff: Radeberger Pils | 06/12/06 ▲ |
| |
| | | | | - Page 2 - |
| Rolf Koch | either You click on Ausführliche response write and have since the Formatierungsoptionen or You setting it without The space between the code (only so it here displayed becomes): [c o d e]here the code[/c o d e] |
| | | | |
| | Jörg Sellmeyer | Andre Hilprecht
the understand I, everything clear. Perhaps needed I the detour over GetText$(Pass%) not weg, because my Password no word separate a number is.
what other, How get your whom Programmcode here in so one Window, sees rather from what about me must certainly time again couple Lines Source post?
Greeting André
this is no detour separate The only Possibility on whom Text To come - alike whether Text or number. Pass% contains only the lever to that Editcontrol. If you a number have and weiterverwenden want, must You do not forget tappt im dunkeln with Val(GetText$(Pass%)) in a numerischen worth To transform.
Greeting Jörg |
| | | Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 06/13/06 ▲ |
| |
| | | | | | | |
| | Andre Hilprecht | Hm, your power me straight clear, the something not goes, what by me but working ??!!?? means my part sees now so from: CompileMarkSeparationText% = @Create(Text,D%,Bitte Programmpasswort eingeben:,20,20,300,20)
Pass% = @Create(Edit,D%,, 20, 50,200,-30)
Font% = @Create(Font,Sans Serif,24,0,0,0,0)
SetFont Pass%, Font%
sendmessage(Pass%,204,ord(*),0)
OK% = @Create(DefButton,D%,OK, 20,140, 140,30)
CANCEL% = @Create(DefButton,D%,Abbruch,180,140,140,30)
@SetFocus(Pass%)
F% = 0
WhileNot F%
WaitInput
If Clicked(OK%)
Pass$ = @GetText$(Pass%)
If Pass$=0000
DestroyWindow(OK%)
F% = 1
DestroyWindow(D%)
Client
ElseIf Pass$ <> 0000
Text1% = @Create(Text,D%,Das Passwort ist leider,20,200,140,20)
Text2% = @Create(Text,D%,F A L S C H ! !,60,220,140,20)
EnableWindow Text%,0
EnableWindow Pass%,0
EnableWindow OK%,0
EnableWindow CANCEL%,0
SLEEP 2500
F% = 1
DestroyWindow(D%)
EndIf
ElseIf @Clicked(CANCEL%)
F% = 1
DestroyWindow(D%)
EndIf
EndWhile
and it working now wunschgemäß.
thanks you all, until next Denkanstoß Greeting André |
| | | Ein PC ist die beste Möglichkeit Fehler zu beheben, die ohne PC gar nicht passiert wären. -frei aus Murphy's Computergesetzen
XProfan X2, Win8 Pro 64bit Update von Win7 i5 / 3,2GHz 4 GB RAM Treibstoff: Radeberger Pils | 06/13/06 ▲ |
| |
| | | You make it still so, as we wrote CompileMarkSeparation Pass% is the ID of Edit Pass$ is the Stringvariable where the Text stored go should |
| | | | |
| | | | - Page 3 - |
| | Andre Hilprecht | have right, is correct, the had I install because IMMER The Message kam; the Password is unfortunately wrong! so working jetz anyway my Password-request wunschgemäß and asterisk.
|
| | | Ein PC ist die beste Möglichkeit Fehler zu beheben, die ohne PC gar nicht passiert wären. -frei aus Murphy's Computergesetzen
XProfan X2, Win8 Pro 64bit Update von Win7 i5 / 3,2GHz 4 GB RAM Treibstoff: Radeberger Pils | 06/13/06 ▲ |
| |
| | Michael Wodrich | me are another couple items noticed:
Button: it ought to only one DefButton inserted go, Rest is Button. The reason: Def standing for Default (default). these means the vorgewählte Button.
DestroyWindow(OK%) - not necessary. If you whom dialog deletes, weg The daraufliegenden Controls voluntarily with...
Überhaupt can You The whole DestroyWindow() on 1 reduce. give simply the variables F% the value 2 if the Password is correct. then can You behind the While-Loop whom DestroyWindow settle and Case F% = 2: Client whom Programmteil Call.
Best wishes Michael Wodrich (too Jahrgang 60) |
| | | Programmieren, das spannendste Detektivspiel der Welt. | 06/13/06 ▲ |
| |
| | Pedro Santos | Hello
How already Pascal erwähnt Sendmessages afford a crowd Opportunities would be a good idea here in the Communty one container To schafen where Sendmessages with Description what it bewirkt stored go. straight for Beginner is the one blessings
greeting
Pedro |
| | | | |
| | | @Petro This will with the number on Messages, The there's one schwieriges undertaking on my own The Messages for RichEdit would here pages fill. for windows generally becomes the means hardly weg. but Perhaps has iF to ne idea, because fundamentally ought to there what possible his. |
| | | | |
| | Nico Madysa | one could in the Online-Doku one chapter Messages lay out. |
| | | | |
| | | Nunja I could NEN MessagesPool invent - any Headerfiles of XProfan as Datenbasis einspeisen - and a leichtes search make possible.
@Nico: in the ODoku there already Sheets with Messages. |
| | | | |
| | | Hello Andre here's the versprochene Text. certainly can it improved go. therefore comes it into Community CompileMarkSeparationDECLARE pfad$,programm$,vers$,txt$,PW_datei$
pfad$=GETDIR$(@)
programm$=Beispiel
vers$=1.0
DECLARE txt%,tip%,I%
DECLARE font0%,font1%,font2%
font0%=CREATE(FONT,ARIAL,14,0,0,0,0)
font1%=CREATE(FONT,COMIC SANS MS,18,0,1,0,0)
font2%=CREATE(FONT,ARIAL,16,6,0,0,0)
PROC MASTER_PASS
PROC CODE_PLUS
PARAMETERS In$
DECLARE Out$
Clear Out$
WHILELOOP 1, @Len(In$), 3
Out$ = Out$ + @Chr$(@Ord(
@Mid$(In$, &Loop, 1)) / 4 + 32)
Out$ = Out$ + @Chr$((@Ord(
@Mid$(In$, &Loop, 1)) MOD 4) * 16 +
@Ord(@Mid$(In$, &Loop + 1, 1)) / 16 + 32)
Out$ = Out$ + @Chr$((@Ord(
@Mid$(In$, &Loop + 1, 1)) MOD 16) * 4 +
@Ord(@Mid$(In$, &Loop + 2, 1)) / 64 + 32)
Out$ = Out$ + @Chr$(@Ord(
@Mid$(In$, &Loop + 2, 1)) MOD 64 + 32)
ENDWHILE
RETURN Out$
Die Verschlüsselung stammt aus PROFAN - Du kannst aber damit experimentieren.
Vorsicht - Sicherung anlegen - Dann ändere mal hier die Zahlen 32 auf 64 !
ENDPROC
-----------------------------------------------------------------------------------------
DECLARE P_win&,P_EE%,P_ende%,P_OK%,P_start%
DECLARE PW_datei$,master$,master%,meldung$,txt_off$,txt_on$
-----------------------------------------------------------------------------------------
DIE BEIDEN ANGABEN MÜSSEN HIER STEHEN !!!
PW_datei$=beispiel.pw$ der Name ist frei wählbar
PW_datei$=pfad$+\+PW_datei$ auch der Platz ist frei (Du kannst die Datei z. B. in
C:Windows/System verstecken - Profan-Befehl: $SysPath
Hier wird eine Passwortdatei in dem Verzeichnis abgelegt, in dem auch dieser Text steht.
Der Name ist BEISPIEL.PW$ kann aber frei gewählt werden. Muss aber immer hier stehen
damit das Programm die Datei findet. Das Passwort ist verschlüsselt. Schau Dir mal mit
einem Editor die Datei an.
-----------------------------------------------------------------------------------------
IF FILEEXISTS(PW_datei$) ist ein Passwort vorhanden ?
DECLARE plus_on%,plus_on$
I%=0
ASSIGN #1,PW_datei$
RESET #1
INPUT #1,master$
CLOSE #1
meldung$=Geben Sie hier das Master-Passwort ein - Bestätigen Sie mit der ENTER-Taste oder klicken Sie auf das Häkchen
P_win&=CREATE(DIALOG,%HWnd, +programm$+vers$+ Master-Passwort,SUB(DIV(%MaxX,2),150),SUB(DIV(%MaxY,2),100),300,200)
txt%=CREATE(TEXT,P_win&,meldung$,15,5,270,60)
SetFont txt%,font1%
plus_on%=CREATE(EDIT,P_win&,plus_on$,20,75,200,-20)
SetFont plus_on%,font1%
P_OK%=CREATE(BUTTON,P_win&,OK,235,70,35,25)
SetFont P_OK%,font0%
tip%=CREATE(TOOLTIP,p_win&,P_OK%,Master-Passwort bestätigen)
SetFont tip%,font0%
P_ende%=CREATE(BUTTON,P_win&,Ende,20,120,80,25)
SetFont P_endE%,font0%
tip%=CREATE(TOOLTIP,p_win&,P_ende%,Programm verlassen)
SetFont tip%,font0%
txt%=CREATE(TEXT,P_win&,Versuch 0 / 3,200,130,200,20)
SetFont txt%,font0%
SetFocus(plus_on%)
P_EE%=0
WhileNot P_EE%
WAITINPUT
If GetFocus(P_ende%)
P_EE%=1
DesTroyWindow(P_win&)
END
ENDIF
IF OR(SCanKey(13),GetFocus(P_OK%))
INC I%
plus_on$=GETTEXT$(plus_on%)
plus_on$=UPPER$(plus_on$)
txt_on$=CODE_PLUS(plus_on$)
If txt_on$=master$
P_EE%=1
DesTroyWindow(P_win&)
MessageBox(Das war richtig !,OK,64) Hier würde der Zugang zum gesperrten Programm sein
EndIf
IfNOT txt_on$=master$
plus_on$=
SetText plus_on%,plus_on$
SetFocus(plus_on%)
txt%=CREATE(TEXT,P_win&,STR$(I%),245,130,8,20)
SetFont txt%,font0%
IF GT(I%,2)
P_EE%=1
DesTroyWindow(P_win&)
END nach der 3. Falscheingabe ist Ende
ENDIF
EndIf
ENDIF
WEND
ENDIF
---------------------------------
IFNOT FILEEXISTS(PW_datei$) Keine Passwort-Datei vorhanden
programm$=UPPER$(programm$)
txt$= +programm$+vers$+ Master-Passwort...
meldung$=Das Programm ist nicht gesichert ! - Trotzdem die Daten verschlüsselt werden,
hat jeder Zugriff ! Geben Sie ein MASTER-PASSWORT ein, welches nur Sie kennen. Danach
ist der Zugang zu +programm$+ gesichert. Das Wort kann innerhalb des Programmes
später geändert werden
P_win&=CREATE(DIALOG,%HWnd,txt$,SUB(DIV(%MaxX,2),200),SUB(DIV(%MaxY,2),100),400,200)
txt%=CREATE(TEXT,P_win&,meldung$,10,5,380,60)
SetFont txt%,font0%
master%=CREATE(EDIT,P_win&,master$,10,72,170,-25)
sendmessage(master%,204,ord(*),0)Tipp aus der Community ;o)
SetFont master%,font1% lässt Du das weg, bekommst Du schöne grosse Sternchen !
P_start%=CREATE(BUTTON,P_win&,OHNE Passwort starten...,10,125,200,25)
SetFont P_start%,font0%
tip%=CREATE(TOOLTIP,p_win&,P_start%,OHNE Master-Passwort...)
SetFont tip%,font0%
P_OK%=CREATE(BUTTON,P_win&,Passwort erzeugen und speichern,190,72,190,25)
SetFont P_OK%,font0%
tip%=CREATE(TOOLTIP,P_win&,P_OK%,Master-Passwort speichern)
SetFont tip%,font0%
P_ende%=CREATE(BUTTON,P_win&,Ende,300,125,80,25)
SetFont P_ende%,font0%
tip%=CREATE(TOOLTIP,P_win&,P_ende%,Beenden)
SetFont tip%,font0%
SetFocus(master%)
P_EE%=0
WhileNot P_EE%
WAITINPUT
Case IsKey(13):SetFocus(master%)
IF GetFocus(P_ende%)
P_EE%=1
END
ENDIF
IF GetFocus(P_start%)
P_EE%=1
DesTroyWindow(P_win&)
MessageBox(Zugang OHNE Passwort,OK,64)
END
ENDIF
IF GetFocus(P_OK%)
master$=GETTEXT$(master%)
master$=UPPER$(master$)
master$=CODE_PLUS(master$)
ASSIGN #1,PW_datei$
REWRITE #1
PRINT #1,master$
CLOSE #1
---------------------------------------------------
ASSIGN #2,PW_datei$
SetFAttr #2,$02 Datei-Attribut: Versteckt
---------------------------------------------------
Im Moment auskommentiert. Im fertigen Programm die beiden Programmzeilen aktivieren
P_EE%=1
DesTroyWindow(P_win&)
MessageBox(Zugang mit neuem Passwort. Danach ist der Zugang nur mit Passwort möglich,OK,64)
END
ENDIF
CASE IsKey(13):SetFocus(master%)
WEND
ENDIF
ENDPROC
########################################################################
MASTER_PASS
|
| | | | |
|
AnswerThemeninformationenthis Topic has 11 subscriber: |