Le but de ce tutoriel est de faire tout simplement parler l'ordinateur en un minimum de lignes
Ici on lui feras simplement annoncer l'heure.
Prérequis
- VisualBasic 2010 Express
- WindowsSeven
I) Vérification et configuration des voix pardefault de Windows
Windows ne contient pas par default de langue française,(ben oui il ne parle que l'Américain , ou le chinois ^^) , alors ilfaut ajouter la voix Virginie (de la societe Nuance (ex Scansoft)) en français, cliquer sur ce Mon lien ,decompresser l'archive et installer RSSolo4FrenchVirginie.exe pour tester la voix, appuyer sur la touche Windows* et la touche 'R' pour ouvrir la fenêtre "Exécuter" , taper :"C:\Windows\SysWOW64\Speech\SpeechUX\sapi.cpl" puis cliquer sur ok.
une fenêtre s'ouvre et vous propose plusieurs voix sélectionner: "ScanSoft Virginie_Dri40_16kHz"
rentrer un texte (en français correctement orthographier!

Voilà maintenant que l'on sait que ça marche on vapourvoir coder
*=(la touche Windows est entre la touche 'CTRL' et 'ALT'!

II) Créer le projet sous Visual Basic 2010 Express
Ouvrer Visual basic 2010 Express et cliquer sur nouveau projet
Sélectionner : application Windows forms
Renseigner le nom du projet : "Mon_Prog_donne_lheure"et cliquer sur ok
Nous avons donc la form mais elle est un peu vide

Ajoutez un bouton ( il se trouve dans la barre d'outils,un glisser/déposer suffit à le mettre en place )
Ajoutez maintenant une Combo Box
Hein, Quoi ?! Combo Box toi-même ! Non rassurez-vous ce n'est pas une insulte mais juste le menu qui nous permettras de sélectionner nos voix
Il se trouve toujours dans la barre d'outil
Au final on devrais avoir une fenêtre qui ressemble à ça:

Et du coup ça y est on a fini l'interface de commande


III) Le code
Contrairement à l'Arduino qui exécute la fonction Loop en boucle, en VB ontravaille par évènement.
Bon ok jusque-là c'est simple mais comment lui dire defaire telle tâche au démarrage ?
Ben en fait c'est vraiment pas compliqué il vous suffitde faire un double clic sur la Form1 précédemment créé !
Et tout d'un coup il nous sort tout un code :
Public Class Form1
Private Sub Form1_Load(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
End Class
Je ne vais pas vous expliqué en détail le VB il a d'autres sites plus sympas pour apprendre [/font][/size]
Si on décompose le code on trouve 2 groupe [/font][/size]
En première place on trouve la déclaration de la class
PublicClass Form1
End Class
C'est la dedans que l'on met notre code en réalité
En 2eme nous avons la fonction : Chargement de la forme
Private Sub Form1_Load(ByVal senderAs System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
Je vous invites à coller dans la place de celui existant ce texte :[/font][/size]
Imports System.Speech
Imports System.Speech.Synthesis
Public Class Form1
Dim s As SpeechSynthesizer = New SpeechSynthesizer() ' declaration du systeme de narration
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'au chargementde la forme:
Dim listevoix =s.GetInstalledVoices 'listevoix est egale a la liste des voix installer
For Each v As InstalledVoice In listevoix 'je charge chaque voix installer
ComboBox1.Items.Add(v.VoiceInfo.Name) '
Next
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click ' quand je clics sur le bouton1
Dim texte As String = "Il est " & Now.Hour & " heure et " & Now.Minute &"Minute" 'declaration du texte
Dim voix As String = ComboBox1.SelectedItem 'la voixest egale la selection du combobox
s.SelectVoice(voix) ' je choisi la voix
s.Speak(texte) 'je lis le texte
End Sub
End Class
Vous avez remarquer ? il y a des lignes de surligné !
C'est normale
Il nous manque une dll pour que le logiciel parle
Le truc c'est que l'on est sous du code en .net(prononcer DotNet)
Il nous donne pas mal d'avantage et nous offre par la mêmeoccasion tout une bibliothèque lié à Windows
comme par exemple:
des module qui permette l'interaction avec les fichier, réseau,les Port de communication( ah ça sera certainement le sujet d'un autre tuto!

etc
pour ajouter la DLL , il suffit de cliquer sur le menu Projet => Ajouter une référence
une fenêtre s'ouvre cliquer sur l'onglet ".Net"
choisissez dans le menu System.speech et cliquer sur Ok
Conclusion
Voilà on as un programme fonctionnel
Oups, j'ai failli oubliez, cliquez sur le bouton lecture pour lancer l'application
Sélectionner la voix " ScanSoft Virginie_Dri40_16kHz" dans le menu et cliquez sur button1
Elle devrais vous dire avec une voix douce : "il est 12 heures et 21 minutes" ....
Enfin la voix douce et l'heure est relatif

J'espère que ça aideras !
Merci de m'avoir lu
Julkien