Changement depuis la dernière version : S'il y a trop d'erreurs, la personne n'acquiert aucune license et le programme refuse de se lancer.
PS : pour les nouveaux, je remprend ce code ne sert pas à faire de sharware ou autre, il sert juste a avoir un logiciel à son nom !
Code : Tout sélectionner
Procedure.s Enregistrement(FichierINI$, Programme$)
; Tente d'ouvrir le fichier *.ini ; s'il exite tout sera sauté
If ReadFile(0, FichierINI$) = 0
; affiche un message d'avertissment
MessageRequester("Attention", "Ceci est votre première utilisation de " + Programme$ + " ou le fichier " + FichierINI$ +" a été supprimé ou remplacé ! Il vous sera demandé des informations qui ne seront communiquées à personne (puisque'elle resteront sur votre PC)", #MB_ICONWARNING)
; demande le nom
Nom :
Nom$ = InputRequester("Saisie des informations 1/2", "Entrez votre nom", "ici")
; Vérifie que le nom n'est pas "ici"
If Nom$ = "ici"
; s'il est "ici", il faut recommencer
MessageRequester("Erreur", "Votre nom ne peut être ici !", #MB_ICONERROR)
; Incrémente le nombre d'erreur
ErreurN = ErreurN + 1
; Si il y a eu 4 erreurs pour le nom
If ErreurN = 4
; Supression du droit de license...
MessageRequester("Erreur", "Vous n'avez pas obtenu de license !", #MB_ICONERROR)
; ... et enregistrement dans le *.ini
CreateFile(0, FichierINI$)
; du string "No"
WriteStringN("No")
; Fin du programme
End
EndIf
; demande de recommencer
Goto Nom
EndIf
; Vérifie que le nom n'est pas trop long
If Len(Nom$) >= 200
; s'il est trop long
MessageRequester("Erreur", "Votre nom est trop long !", #MB_ICONERROR)
; Incrémente le nombre d'erreur
ErreurN = ErreurN + 1
; Si il y a eu 4 erreurs pour le nom
If ErreurN = 4
; Supression du droit de license...
MessageRequester("Erreur", "Vous n'avez pas obtenu de license !", #MB_ICONERROR)
; ... et enregistrement dans le *.ini
CreateFile(0, FichierINI$)
; du string "No"
WriteStringN("No")
; Fin du programme
End
EndIf
; demande de recommencer
Goto Nom
EndIf
; Vérifie que le nom n'est pas trop court
If Len(Nom$) <= 4
; s'il est trop court
MessageRequester("Erreur", "Votre nom est trop court !", #MB_ICONERROR)
; Incrémente le nombre d'erreur
ErreurN = ErreurN + 1
; Si il y a eu 4 erreurs pour le nom
If ErreurN = 4
; Supression du droit de license...
MessageRequester("Erreur", "Vous n'avez pas obtenu de license !", #MB_ICONERROR)
; ... et enregistrement dans le *.ini
CreateFile(0, FichierINI$)
; du string "No"
WriteStringN("No")
; Fin du programme
End
EndIf
; demande de recommencer
Goto Nom
EndIf
; demande l'adresse e-mail
AdresseMail :
Adresse$ = InputRequester("Saisie des informations 2/2", "Entrez une adresse e-mail", "ici")
; Vérifie que l'adresse e-mail n'est pas "ici"
If Adresse$ = "ici"
; si elle est "ici",
MessageRequester("Erreur", "Votre adresse e-mail ne peut être ici !", #MB_ICONERROR)
; Incrémente le nombre d'erreur
ErreurA = ErreurA + 1
; Si il y a eu 5 erreurs pour l'adresse
If ErreurA = 5
; Supression du droit de license...
MessageRequester("Erreur", "Vous n'avez pas obtenu de license !", #MB_ICONERROR)
; ... et enregistrement dans le *.ini
CreateFile(0, FichierINI$)
; du string "No"
WriteStringN("No")
; Fin du programme
End
EndIf
; demande de recommencer
Goto AdresseMail
EndIf
; Vérifie que l'adresse e-mail n'est pas trop longue
If Len(Adresse$) >= 250
; si elle est trop longue
MessageRequester("Erreur", "Votre adresse e-mail est trop longue !", #MB_ICONERROR)
; Incrémente le nombre d'erreur
ErreurA = ErreurA + 1
; Si il y a eu 5 erreurs pour l'adresse
If ErreurA = 5
; Supression du droit de license...
MessageRequester("Erreur", "Vous n'avez pas obtenu de license !", #MB_ICONERROR)
; ... et enregistrement dans le *.ini
CreateFile(0, FichierINI$)
; du string "No"
WriteStringN("No")
; Fin du programme
End
EndIf
; demande de recommencer
Goto AdresseMail
EndIf
; Vérifie que l'adresse e-mail n'est pas trop courte
If Len(Adresse$) <= 4
; si elle est trop courte
MessageRequester("Erreur", "Votre adresse e-mail est trop courte !", #MB_ICONERROR)
; Incrémente le nombre d'erreur
ErreurA = ErreurA + 1
; Si il y a eu 5 erreurs pour l'adresse
If ErreurA = 5
; Supression du droit de license...
MessageRequester("Erreur", "Vous n'avez pas obtenu de license !", #MB_ICONERROR)
; ... et enregistrement dans le *.ini
CreateFile(0, FichierINI$)
; du string "No"
WriteStringN("No")
; Fin du programme
End
EndIf
; demande de recommencer
Goto AdresseMail
EndIf
;Vérifie la présence de @
Arobas = FindString(Adresse$, "@", 1)
If Arobas = 0
;S'il n'y en a pas
MessageRequester("Erreur", "Ceci n'est pas une adresse e-mail valide !", #MB_ICONERROR)
; Incrémente le nombre d'erreur
ErreurA = ErreurA + 1
; Si il y a eu 5 erreurs pour l'adresse
If ErreurA = 5
; Supression du droit de license...
MessageRequester("Erreur", "Vous n'avez pas obtenu de license !", #MB_ICONERROR)
; ... et enregistrement dans le *.ini
CreateFile(0, FichierINI$)
; du string "No"
WriteStringN("No")
; Fin du programme
End
EndIf
; demande de recommencer
Goto AdresseMail
EndIf
; Créé le fichier et stoke les infos
CreateFile(0, FichierINI$)
WriteStringN(Nom$)
WriteString(Adresse$)
; Annonce que tout est fini
MessageRequester("Succés !", "Vous venez d'acquerir une license ! Elle est decernée à : " + Nom$ + " " + Adresse$ + ".", #MB_ICONINFORMATION)
; ferme le fichier
CloseFile(0)
EndIf
;Ouvre le fichier
If ReadFile(0, FichierINI$)
;Lit la première ligne
License$ = ReadString()
;Si elle ne vaut rien
If License$ = ""
;Affcihe du message d'erreur
MessageRequester("Erreur", "Vous n'avez pas obtenu de license", #MB_ICONERROR)
;Fermeture du fichier
CloseFile(0)
;Quitte le programme
End
; Ou si elle est égale à "No"
ElseIf License$ = "No"
;Affcihe du message d'erreur
MessageRequester("Erreur", "Vous n'avez pas obtenu de license", #MB_ICONERROR)
;Fermeture du fichier
CloseFile(0)
;Quitte le programme
End
EndIf
; fermeture du fichier
CloseFile(0)
EndIf
;Ouvre le fichier
If ReadFile(0,FichierINI$)
;Lit la première ligne
License.s = ReadString()
; fermeture du fichier
CloseFile(0)
EndIf
;La procedure retourne maintenant le nom d'utilisateur
ProcedureReturn License.s
EndProcedure
Exemple :
Code : Tout sélectionner
Nom$ = Enregistrement("config.ini", "Editeur")