Bonjour,
Je vous expose mon petit problème.
Mon application communique avec une autre application. Par un simple clic sur un bouton j'envoie un ordre à l'application qui doit me retourner une information dès que cette ordre est réalisé.
Ceci se fait avec le simple code ci-dessous
Cela fonctionne sauf que :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Private Sub Button17_Click(sender As Object, e As EventArgs) Handles Button17.Click Try Dim ordre As String Dim recu As String TextBox19.Text = "" ordre = TextBox18.Text recu = objArduino.CommandString(ordre, False) TextBox19.Text = recu Catch ex As Exception MessageBox.Show("Problème connexion avec l'Arduino.", "Arduino", MessageBoxButtons.OK, MessageBoxIcon.None) End Try End Sub
- en attendant la réponse (pour les plus courtes 1 à 2 secondes) mon appli est bloquée et cela je ne le voudrais pas ;
- pour certaines réponses supérieures à 5 secondes, j'ai ma messageBox qui s'affiche car le délai de réponse est trop long (si je retire le Try, j'ai le message d'erreur Timed out waiting for received data).
Ce que je voudrais c'est que l'attente de la réception de l'information se fasse tranquillement pénard dans son coin et que je puisse utiliser librement mon appli. Lorsque l'info arrive, elle s'affiche dans la textbox.
J'ai lu que cela semble possible mais je n'y comprend rien. Entre les thread, les invoke, les delegate et backgrondworker je ne sais pas par où commencer.
Donc voila, je viens chercher de l'aide.
Merci
Partager