Page 1 sur 1
Pure_anniv
Publié : mar. 01/mars/2011 14:00
par Backup
j'ai voulu faire un petit prg qui previens les anniversaires
avant j'utilisais celui de Ar-s
mais celui-ci présente a mes yeux 2 défauts
1 une fois installé , on ne peut apparemment pas le retirer de liste des prg
qui se lance automatiquement dans le registre ...ou alors j'ai pas trouvé

j'ai du désinstaller avec regedit ...
2 une fois que son prg a fait son travail , il reste dans le Systray ..
a mon sens , ça n'a pas d'utilité ...
alors ce matin, j'ai relevé mes manches pour faire un petit prg
quel pied Purebasic ..

Re: Pure_anniv
Publié : mar. 01/mars/2011 15:46
par Ar-S
1 une fois installé , on ne peut apparemment pas le retirer de liste des prg
qui se lance automatiquement dans le registre ...ou alors j'ai pas trouvé

j'ai du désinstaller avec regedit ...
En décochant "lancement auto" la clé est supprimée non ?
Sinon c'est sympa de partager ce petit bout de code.
Re: Pure_anniv
Publié : mar. 01/mars/2011 16:21
par Backup
Ar-S a écrit :En décochant "lancement auto" la clé est supprimée non ?
ha bah voila

, j'avais meme pas vu
Sinon c'est sympa de partager ce petit bout de code.
c'est vraiment pas grand chose ..
mais ça peut permetre a certains de voir
comment avec un simple fichier texte
on pourrai aisement faire une minibase de données
j'adore la fonction Stringfield() , que je colle a toute les sauces

Re: Pure_anniv
Publié : mar. 01/mars/2011 17:24
par Ar-S
Dobro a écrit :
mais ça peut permetre a certains de voir
comment avec un simple fichier texte
on pourrai aisement faire une minibase de données
j'adore la fonction Stringfield() , que je colle a toute les sauces

Moi je suis assez fan des fonctions "pref" de pb ^^ J'y ai juste ajouter ma procedure CountPrefgroup() qui lui manquait.
-----edit-----
Si la personne laisse son pc allumé une nuit parce qu'il télécharge un.... gros iso linux

, le lendemain il risque de zapper de relancer le programme
et éventuellement de louper l'anniv de son conjoint ! Pire, cela risque d'entrainer la destruction de son couple, puis de dépression en dépression, il perdra son boulot et finira par picoler et sombrer dans la folie..
Il est super dangereux ce soft ! 
Re: Pure_anniv
Publié : mar. 01/mars/2011 17:42
par Backup
Dobro a écrit :
c'est une base , vous pouvez éventuellement coder l'ajout de la prise en compte
des fêtes ,
de l'alerte X jours avant , etc ....


Re: Pure_anniv
Publié : mar. 01/mars/2011 17:55
par Ar-S
En fait j'ai sorti ma bulle parce que c'est vraiment ce qui m'a pris le choux pour LDVMR.
Le programme doit vérifier l'heure et la date en tache de fond et comparer avec sa base contacte. Si un évènement est à fêter (si le jour est un jour anniversaire), il le signale. Ensuite il doit évidement poursuivre le contrôle au cas ou l'utilisateur le laisserai tourner. (et il prend en compte la prise en charge X jours avant)

Re: Pure_anniv
Publié : mar. 29/mars/2011 14:46
par DarkIchigo
Dobro a écrit :...
mais ça peut permetre a certains de voir
comment avec un simple fichier texte
on pourrai aisement faire une minibase de données
j'adore la fonction Stringfield() , que je colle a toute les sauces

Moi je veux bien voir comment ça marche, c'est justement ce que je voudrai comprendre (je sais, je suis un peu long ^^)
le seul problème c'est que je vois pas ton code ^^ .
Si vous pouvez m'aider svp.
Merci.
Re: Pure_anniv
Publié : mar. 29/mars/2011 15:49
par Ar-S
Il veut dire :
Code : Tout sélectionner
Separateur$=","
For k=1 To 4
Debug StringField("Paul,Bob,Toto,Bernard", k, separateur$)
Next
Re: Pure_anniv
Publié : mar. 29/mars/2011 16:19
par DarkIchigo
C'est pour ca que je demandais le code complet de son utilisation (pas forcément complet du programme)
car avec mon niveau de codage je comprend l'exemple mais ne sais pas l'utiliser pour me faire un genre de
fichier .pref (m'en fou qu'il soit lisible).
Re: Pure_anniv
Publié : mar. 29/mars/2011 22:35
par Ar-S
dans la doc tu regardes l'exemple readfile.
ça te donne en le mixant avec le miens la solution :
Imagine que ton fichier Texte.txt contienne (sans les guillemets) : "
LSI,Dobro,G-ROM,Ar-S,KCC,Venom,Flaith,Djes,Ollivier,et les autres que j'ai oublié"
Code : Tout sélectionner
;Ar-S
If ReadFile(0, "Texte.txt") ; Si le fichier peut être lu , on continue...
ContenuTotal$=""
While Eof(0) = 0 ; Boucle tant que la fin du fichier n'est pas atteinte. (Eof = 'End Of File')
Ligne$=ReadString(0) ; Affiche ligne par ligne le contenu du fichier
ContenuTotal$+Ligne$ ; Ici on englobe le contenu de chaque ligne
Wend
CloseFile(0) ; Ferme le fichier précédemment ouvert
Separateur$=","
NbreDeSeparateur=CountString(ContenuTotal$,",")+1 ; tu choppes le nombres de "," et tu ajoutes 1 pour le dernier nom
For k=1 To NbreDeSeparateur
Debug StringField(ContenuTotal$, k, Separateur$)
Next
Else
MessageRequester("Information","Impossible d'ouvrir le fichier!")
EndIf
Voilou.
J'espère que ça répondra à ton soucis.
Note aussi que les commandes Pref de PB marchent aussi très bien.
ClosePreferences
CreatePreferences
ExaminePreferenceGroups
ExaminePreferenceKeys
NextPreferenceGroup
NextPreferenceKey
OpenPreferences
PreferenceComment
PreferenceGroup
PreferenceGroupName
PreferenceKeyName
PreferenceKeyValue
ReadPreferenceDouble
ReadPreferenceFloat
ReadPreferenceInteger
ReadPreferenceLong
ReadPreferenceQuad
ReadPreferenceString
RemovePreferenceGroup
RemovePreferenceKey
WritePreferenceDouble
WritePreferenceFloat
WritePreferenceInteger
WritePreferenceLong
WritePreferenceQuad
WritePreferenceString
Re: Pure_anniv
Publié : mer. 30/mars/2011 7:26
par DarkIchigo
Merci pour ton exemple, je vais essayer de mettre en application pourvoir
si c'est le carnage ou si j'y arrive

Re: Pure_anniv
Publié : mer. 30/mars/2011 12:23
par DarkIchigo
Bon du coup je m'en suis sorti avec les pref, ca me parait plus simple et plus adapté a mon besoin.
Merci du coup de main !
Re: Pure_anniv
Publié : mer. 30/mars/2011 13:51
par Ar-S
Content que tu t'en sois tiré. Faut que si les commandes PB de prefs génère des codes un poil longs, elles restent simple à comprendre et font le boulot qu'on leur demande.
Voilà une procédure que j'ai créé (et qui manque aux commandes prefs)
Elle permet de renvoyer le nombre de groupes d'un fichier pref donné :
Code : Tout sélectionner
;- CountPrefGroups(nom_du_fichier_pref$)
; By Ar-S / 2009 - PB.4.xx for Windows >= XP
; Permet de renvoyer le nombre de groupes contenus dans un fichier Pref.
; Si le fichier Pref n'est pas trouvé, la valeur sera de -1
Procedure.i CountPrefGroups(file$)
If OpenPreferences(file$)
If ExaminePreferenceGroups()
NumGroup=0
While NextPreferenceGroup()
NumGroup=NumGroup+1
Wend
Else
NumGroup=0
EndIf
ClosePreferences()
Else
NumGroup = -1
EndIf
ProcedureReturn NumGroup
EndProcedure
;EXAMPLE ---
Resultat = CountPrefGroups("testpref.txt")
Debug Resultat
Tu peux télécharger la lib complète (et l'aide/exemple)
ICI
Voilou.
Re: Pure_anniv
Publié : jeu. 31/mars/2011 9:34
par DarkIchigo
Merci, je garde dans un coin, je partagerai mon code si jamais j'arrive à régler les quelques bugs
Mais faudra pas rigoler, c'est surement pas très bien codé par rapport à vous
