Agenda problemes,questions base de registre

Signaler
-
 Utilisateur anonyme -
Bonjour à tous,



Je m’explique : je suis en train de réaliser un agenda ou il sera possible pour chaque jours de rentrer des événements qui dépendra aussi de l’heure je m’explique par un exemple :



<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>

 





L’utilisateur rentre dans un formulaire la date de cette événement (10/12/08) ensuite l’heure de cette événement (15:21) puis enfin la description de cette événement (pas oublier mémé à la l’aéroport). Donc, il peut avoir plusieurs événements par jours.




 





Ensuite cette événement sera stocké dans la base de registre Windows (obligé dsl) voila comment je m’y prends :




     
  Vnote = TextBox1.Text






        Vdate1 = TextBox2.Text






        Vheure = TextBox3.Text






       
Dim key As Microsoft.Win32.RegistryKey






 






key = Microsoft.Win32.Registry.CurrentUser.CreateSubKey("Agenda").





CreateSubKey(Vdate1).CreateSubKey(Vheure).CreateSubKey("Evenement")






 







        key.SetValue("note", Vnote)






 






Déjà dite moi SVP si c’est la bonne façon (mais, je suis obligé d’utiliser la base de registre)






 






Ensuite, commence mon problème, je voudrai que lorsque l’utilisateur clique gauche sur une date du calendrier et bien une fenetre apparait avec tout les événements et l’heures de ces événements.Mais la je suis totalement perdu car je suis un novice en vb.net.





SVp aidez moi car je bloque.





Merci d’avance.

9 réponses

Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
"...Déjà dite moi SVP si c'est la bonne façon..."



utiliser la base de registre ??? certainement que non.

La base de registre n'est pas une base de donnée, elle peut contenir des configuration mais en aucun cas il faut s'en servir pour y stocker des données dedans.
Ne pas oublier que la base de registre est le cœur du système Windows. Si elle est corrompu, Windows ne démarre plus et il ne reste plus qu'à formater et perdre donc tous tes documents.

Dire que tu es obligé d'utiliser la base de registre c'est
- soit tu as confondu "base de registre" et "base de donnée" quand on t'a expliqué le projet
- soit tu n'as pas bien compris la demande
- soit tu ne dis pas tout et tu présente mal ton problème
- soit celui qui t'impose cela est un abruti qui connais rien aux systèmes

Pitié, laissez cette p*** de base de registre tranquille. Il nous viendrez pas à l'idée d'aller tripotter le coeur d'un réacteur nucléaire, faites-en autant avec la base de registre.
Ou alors ne venez pas pleurer lorsque vous aurez flinguer votre système.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php

Merci! d'avoir répondu aussi vite.
Ok, je crois que je ne vais pas utiliser la base de registre mais alors quoi utiliser car une base de donnée c'est bien mais les utilisateurs sont obligé de créer une base , est ce que je peut utiliser des fichiers ou autre pour stockes mais données et pouvez vous svp m'expliquer comment réalisé mon proget.

Merci d'avance 
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
Une base de données est par définition une zone de stockage de données.

Si le plus souvent on pense à Access, SQLServer ou autres Oracle ..., une base de données peut effectivement etre un simple fichier texte, libre à toi d'en choisir le format de stockage de tes évènements. Le principal étant de pouvoir les relires

"...c'est bien mais les utilisateurs sont obligé de créer une base..."
Normalement non. Si, dans la cas d'un fichier texte, tu peux très bien le créer lors du premier enregistrement, une base de donnée de type Access ou autre est généralement fournie, vide, avec l'application. L'utilisateur (plus exacetemnt ton application) ne fera que la remplir.

TU peux utiliser une base Access, juste le fichier mdb à fournir, tu peux utiliser une base SQLServer Express, juste le fichier mdf à fournir, tu peux utiliser du fichier texte, ini, xml, ...
Par contre sur de la BDD SQLServer, MySQL, Oracle, ... il te faudra un serveur sur lequel la base fonctionnera, ton application ne sera plus autonome.

Le plus simple dans ton cas, un fichier texte, une ligne par évènement, chaque paramètre d'un évènement, dans un ordre bien précis et séparé par un caractère identifiable le ; par exemple (tout cela ressemble étrangement à un fichier csv, lisible par Excel. Excel qui peut aussi servir comme base de données)

Plus élaboré, si tu maitrise un peu , c'est le fichier xml, dans lequel, tu pourrais par exemple serialiser une collection d'objets évènements (classe ou struture contenant toutes les infos d'un évènement).

Viennent ensuite les "vrais" bases de données

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php

Merci pour tout ces renseignements, je voudrai utiliser les fichiers pour gérer les événements j'utilise :


FileOpen(1, "agenda.txt", OpenMode.Output)


Print(1, Vdate1 + ";")


Print(1, Vheure + ";")


Print(1, Vnote + ";")


FileClose(1) ' Fermer.

Mais à chaque fois sa remplace mon fichier donc ecrase les enseignes valeurs

De l'aide SVp
Messages postés
3275
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
4
FileOpen(1, "agenda.txt", OpenMode.Output)


Print(1, Vdate1 + ";")


Print(1, Vheure + ";")


Print(1, Vnote + ";")...


c'est pas du .net !
io.streamreader  pour lire et
io.streamwriter pour écrire

ou




Dim

Fichier


As





String

= Application.StartupPath &


"\agenda.csv"










Dim

str


As





String

= vdate &


";"

& vheure &


";"

& vnote & vbcrlf



My

.Computer.FileSystem.WriteAllText(Fichier, Str,


True

)




Bonjour chez vous !

Merci ça marche! Donc Si j'ai bien compris chaque ligne comprendra:

Ladate;L'heure;l'événement

Donc maintenant comment je fais svp pour récuperer les données de chaques lignes et donc afficher par jours les événements avec les heures ?

Franchement, vous gérez grave!Merci beaucoup pour l'aide
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
Un petit truc du genre :

        Dim rd As New System.IO.StreamReader("tonFichier")
        Dim chn As String

        chn = rd.ReadLine()
        Vdate = chn.Split(";"c)(0)
        Vheure = chn.Split(";"c)(1)
        vnote = chn.Split(";"c)(2)

Bien sur, tu devra mettre le code en bleu dans une boucle pour lire tous les évènements car là tu ne lira que le premier

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
3275
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
4
  Dim rd As New System.IO.StreamReader("tonFichier")
        Dim chn As String
pourquoi ne pas utiliser un datetimepicker pour les dates , et un autre pour les heures ???
        chn = rd.ReadLine()

Dim
dat
As
Date=
'tadate

If chn.StartsWith(dat.ToString)
Then

  Vdate = chn.Split(";"c)(0)
        Vheure = chn.Split(";"c)(1)
        vnote = chn.Split(";"c)(2)

End
If

Bonjour chez vous !

Voila mon code pour ouvrir le fichier et le lire

Public

Class Form3 

 

Private
Sub Form3_Load(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles
MyBase.LoadlblDate.Text = Vdate

Dim Vd = Vdate.ToLongDateString 

Dim rd
As
New System.IO.StreamReader(
"agenda.txt")

Dim chn
As
String

DoUntil rd.Peek -1chn rd.ReadLine()

 

Dim dat
As
Date = Vdate

If chn.StartsWith(dat.ToString)
Then 

Dim Vdate2 = chn.Split(
";"c)(0)

Dim Vheur = chn.Split(
";"c)(1)

Dim vnot = chn.Split(
";"c)(2)

End
If

Loop

End
SubEnd

Class

Dite moi si ca va svp et  en plus comment récupérer alors les événements ainsi que leurs heures

Merci bien !!