CB30188: Déclaration attendue

Résolu
je rencontre le souci suivant : erreur CB30188 : déclaration attendue à la ligne 17.
Je comprends pas, la procédure est sur la ligne juste en-dessous !
(le code doit encore être complété, mais je teste régulièrement au cours du développement - manie attrapée à l'époque où le debugging se faisait sans aide)

Je sais, je débute avec VB

Merci

1 Imports System.Net
2 Imports System.Net.Sockets
3 Imports System.Threading

4 Public Class _Default
5 Inherits Page
6
7 Public Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
8 End Sub
9
10 Public Class ThreadManager
11 Public MonThread As Thread
12 Public Mess As Byte()
13 Public Envoi As Integer
14 Public MonEP As IPEndPoint
15
16 Public MonSocketClient As Socket = New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
17 AGE_connexion()
18
19 Public Sub AGE_connexion()
20 Try
21 MonEP = New IPEndPoint(IPAddress.Parse("127.0.0.1"), 45435)
22 MonSocketClient.Connect(MonEP)
23 Return
24 Catch ex As Exception
25 Return
26 End Try
27 End Sub
28
29 Public Sub envoyer_message(message)
30 Mess = Encoding.UTF8.GetBytes(message)
31 Envoi = MonSocketClient.Send(Mess)
32 End Sub
33
34 Public Sub lecture()
35 MonThread = New Thread(AddressOf ThreadLecture)
36 MonThread.Start()
37 End Sub
38
39 Public Sub ThreadLecture()
4 While (MonSocketClient.Connected)
41 Dim Bytes(255) As Byte
42 Dim Recu As Integer
43
44 Try
45 Recu = MonSocketClient.Receive(Bytes)
46 Catch ex As Exception
47 MsgBox("Connexion perdue, arrêt de la réception des données ...", 1)
48 End Try
49
50 Dim Message As String
51 Message = System.Text.Encoding.UTF8.GetString(Bytes)
52 Message = Message.Substring(0, Recu)
53 MsgBox(Message)
54 End While
55 End Sub
56 End Class
57
57 End Class

--
Alain Elshocht

6 réponses

  1. je ne peux pas modifier la publication ...

    (l'adresse mail est toujours présente dans la signature, même après avoir quitté et être revenu sur me site)
    1. quand je positionne l'appel dans la gestion de l'événement PageLoad, l'erreur est AGE_connexion n'est pas déclaré ....

      est-ce de la fatigue ou la saturation après deux mois de recherche sur ce sujet (sans doute mal orientée)

      Imports System.Net
      Imports System.Net.Sockets
      Imports System.Threading
      Public Class _Default
          Inherits Page
      
          Public Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
              MsgBox("loaded")
              AGE_connexion()
              MsgBox("ok")
          End Sub
      
      End Class
      
      
      
      Public Class ThreadManager
              Public MonThread As Thread
              Public Mess As Byte()
              Public Envoi As Integer
              Public MonEP As IPEndPoint
              Public AGE_Con As Boolean
      
      
          Public MonSocketClient As Socket = New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
      
          Public Sub AGE_connexion()
              MsgBox("Connecting")
              Try
                  MonEP = New IPEndPoint(IPAddress.Parse("127.0.0.1"), 45435)
                  MonSocketClient.Connect(MonEP)
                  MsgBox(MonSocketClient)
                  Return
              Catch ex As Exception
                  MsgBox(MonSocketClient)
      
                  Return
              End Try
          End Sub
      
      
          Public Sub envoyer_message(message)
                  Mess = Encoding.UTF8.GetBytes(message)
                  Envoi = MonSocketClient.Send(Mess)
              End Sub
      
              Public Sub lecture()
                  MonThread = New Thread(AddressOf ThreadLecture)
                  MonThread.Start()
              End Sub
      
              Public Sub ThreadLecture()
                  While (MonSocketClient.Connected)
                      Dim Bytes(255) As Byte
                      Dim Recu As Integer
      
                      Try
                          Recu = MonSocketClient.Receive(Bytes)
                      Catch ex As Exception
                          MsgBox("Connexion perdue, arrêt de la réception des données ...", 1)
                      End Try
      
                      Dim Message As String
                      Message = System.Text.Encoding.UTF8.GetString(Bytes)
                      Message = Message.Substring(0, Recu)
                      MsgBox(Message)
                  End While
              End Sub
          End Class 

      1. Modérateur
        Question, quel tutoriel as-tu suivi ?
        Il me semble que tu n'as pas suivi toutes les étapes.

        AGE_connexion est une méthode accessible à partir d'une instance de ThreadManager.
        Il faut d'abord créer un objet puis appeller la méthode.