CB30188: Déclaration attendue

Résolu/Fermé
elshocht Messages postés 29 Date d'inscription mercredi 9 avril 2008 Statut Membre Dernière intervention 9 juin 2023 - 10 août 2020 à 17:42
yg_be Messages postés 23335 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 novembre 2024 - 11 août 2020 à 13:27
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

6 réponses

NHenry Messages postés 15163 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 1 novembre 2024 345
10 août 2020 à 19:25
Merci d'utiliser la coloration syntaxique :
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

Ensuite pour faire un appel de fonction, il faut être dans une méthode ...
0
elshocht Messages postés 29 Date d'inscription mercredi 9 avril 2008 Statut Membre Dernière intervention 9 juin 2023
10 août 2020 à 19:42
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)
0
elshocht Messages postés 29 Date d'inscription mercredi 9 avril 2008 Statut Membre Dernière intervention 9 juin 2023
10 août 2020 à 20:10
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 

0
NHenry Messages postés 15163 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 1 novembre 2024 345
10 août 2020 à 20:47
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.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
elshocht Messages postés 29 Date d'inscription mercredi 9 avril 2008 Statut Membre Dernière intervention 9 juin 2023
10 août 2020 à 20:52
open classroom

largué .....
0
yg_be Messages postés 23335 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 novembre 2024 Ambassadeur 1 551
11 août 2020 à 13:27
bonjour, je pense que ceci t'aidera: https://www.developpez.net/forums/d2088585/dotnet/langages/vb-net/probleme-appel-procedure/

la prochaine fois que tu poses la même question ici et ailleurs, peux-tu nous prévenir?

le moment venu, peux-tu marquer la discussion comme résolue?
0