Open JansegersEli opened 4 years ago
Ik vind geen oplossing op de foutmelding 'Elk socketadres (protocol/netwerkadres/poort) kan normaal slechts één keer worden gebruikt.'
Dit is ook geen foutmelding. Het is een boodschap: je mag elke stream maar 1 maal gebruiken... Als je de klasse en de lijn noteert waar deze melding voorkomt is het eenvoudiger voor mij om gericht antwoord te geven... Waarschijnlijk stop je de server niet volledig waardoor de socket nog actief is?
Als ik de server probeer te stoppen, krijg ik deze melding 'Een blokkeerbewerking is onderbroken door een aanroep naar WSACancelBlockingCall' Branch '#33Seppe' Lijn 48 op server.vb is de foutmelding Lijn 112 op server.vb wordt hij gestopt
Seppe,
Heb je deze melding al eens opgezocht? Ik vind hier vrij snel info over die jou zou moeten helpen... Lang verhaal kort: Je sluit de socket in een andere thread dan dat hij geopend is...
Misschien is dit zoals verwacht? Dan zet je hier een try catch rond en handel je dit verder correct af. Is dit niet zoals verwacht? Dan zorg je dat alles in 1 thread gebeurt...
Mvg, K. Hoof
Op di 7 apr. 2020 om 13:13 schreef seppevs162 notifications@github.com:
Als ik de server probeer te stoppen, krijg ik deze melding 'Een blokkeerbewerking is onderbroken door een aanroep naar WSACancelBlockingCall' Branch '#33Seppe' Lijn 48 op server.vb is de foutmelding Lijn 112 op server.vb wordt hij gestopt
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/Broeders-Handel/NetworkGame1920/issues/33#issuecomment-610326481, or unsubscribe https://github.com/notifications/unsubscribe-auth/ANIC7VDKPZRXTHKIOFUFYFDRLMDFVANCNFSM4LQLHC7Q .
Je kan nu de server afsluiten en terug opstarten, je kan ook weer connecteren als je de server terug opstart. Ik zal nog even wachten om de issue te closen tot na de meeting straks.
Bekijk om alles in de juiste volgorde uit te voeren. Eerst inkomende berichten weigeren, dan melden dat je gaat stoppen en dan pas listeren afsluiten
Als ik de server afsluit kan een client nog steeds berichten sturen. op server.vb --> stopbutton_click (vanaf lijn 119 tot lijn 126) misschien ben ik er iets vergeten toevoegen. op server.vb --> sub ConnectClient (vanaf lijn 49 tot lijn 63) daar kan er ook een fout zijn die ik over het hoofd zie. Branch #33Seppe
Seppe,
Controleer of je zeker alle threads afsluit.
Als je je server afsluit (op de geplande manier) krijg je in Visual Studio dan opnieuw de optie om te starten (Continue, groene pijl bovenaan) of staat er nog Stop (Rood vierkant). In het laatste geval wilt het zeggen dat er nog threads actief zijn...
Mvg,
Koen Hoof
On Mon, Apr 13, 2020, 12:13 seppevs162 notifications@github.com wrote:
Als ik de server afsluit kan een client nog steeds berichten sturen. op server.vb --> stopbutton_click (vanaf lijn 119 tot lijn 126) misschien ben ik er iets vergeten toevoegen. op server.vb --> sub ConnectClient (vanaf lijn 49 tot lijn 63) daar kan er ook een fout zijn die ik over het hoofd zie.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/Broeders-Handel/NetworkGame1920/issues/33#issuecomment-612840327, or unsubscribe https://github.com/notifications/unsubscribe-auth/ANIC7VHRJY2DUMPD6OMX5A3RMLQT3ANCNFSM4LQLHC7Q .
Er waren nog 2 threads actief, heb ze nu afgesloten en nu kan je geen berichten meer sturen als je afsluit.
Zorg dat de client dit ook goed afhandeld (bekijk #39 )
Als ik buttons in de client probeer aan te passen krijg ik de melding "Het is niet toegestaan een bewerking uit te voeren via verschillende threads: er werd vanaf een andere thread toegang gekregen tot het besturingselement ConnectButton dan de thread waarop het element is gemaakt." Als ik het opzoek zie ik dat ik invoke moet gebruiken maar ik weet niet goed hoe. branch #33 client.vb vanaf lijn 71
Seppe,
Hoor eens rond bij je collega's (of zoek eens in de code naar het woord 'invoke'). Jullie gebruiken dit al om tekst weer te geven.
Mvg,
Koen Hoof
On Wed, Apr 22, 2020, 13:01 seppevs162 notifications@github.com wrote:
Als ik buttons in de client probeer aan te passen krijg ik de melding "Het is niet toegestaan een bewerking uit te voeren via verschillende threads: er werd vanaf een andere thread toegang gekregen tot het besturingselement ConnectButton dan de thread waarop het element is gemaakt." Als ik het opzoek zie ik dat ik invoke moet gebruiken maar ik weet niet goed hoe. branch #33 https://github.com/Broeders-Handel/NetworkGame1920/issues/33 client.vb vanaf lijn 71
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/Broeders-Handel/NetworkGame1920/issues/33#issuecomment-617708099, or unsubscribe https://github.com/notifications/unsubscribe-auth/ANIC7VBCBEILSJ7CZBSNPZ3RN3FCJANCNFSM4LQLHC7Q .
Seppe, ben jij op de master aan het werken? Simon krijgt plots dezelfde foutmelding als jou
On Wed, Apr 22, 2020, 14:11 Koen Hoof koenhoof@gmail.com wrote:
Seppe,
Hoor eens rond bij je collega's (of zoek eens in de code naar het woord 'invoke'). Jullie gebruiken dit al om tekst weer te geven.
Mvg,
Koen Hoof
On Wed, Apr 22, 2020, 13:01 seppevs162 notifications@github.com wrote:
Als ik buttons in de client probeer aan te passen krijg ik de melding "Het is niet toegestaan een bewerking uit te voeren via verschillende threads: er werd vanaf een andere thread toegang gekregen tot het besturingselement ConnectButton dan de thread waarop het element is gemaakt." Als ik het opzoek zie ik dat ik invoke moet gebruiken maar ik weet niet goed hoe. branch #33 https://github.com/Broeders-Handel/NetworkGame1920/issues/33 client.vb vanaf lijn 71
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/Broeders-Handel/NetworkGame1920/issues/33#issuecomment-617708099, or unsubscribe https://github.com/notifications/unsubscribe-auth/ANIC7VBCBEILSJ7CZBSNPZ3RN3FCJANCNFSM4LQLHC7Q .
Ik heb dit als sub gezet, inspiratie gehaald bij de sub UpdateText. Maar ik krijg nog steeds dezelfde melding als ik de buttons wil enablen
Private Delegate Sub UpdateButDelegate(But As Button) Private Sub updateClient(but As Button) If but.InvokeRequired Then but.Invoke(New UpdateButDelegate(AddressOf updateClient), New Button) End If End Sub
Ik ben op mijn eigen branch '#33' bezig, ik heb niets veranderd op de master.
Verzonden vanuit Outlook Mobilehttps://aka.ms/blhgte
From: Hoofkoen notifications@github.com Sent: Wednesday, April 22, 2020 3:26:22 PM To: Broeders-Handel/NetworkGame1920 NetworkGame1920@noreply.github.com Cc: Van Severen Seppe ll-26147@broeders.be; Assign assign@noreply.github.com Subject: Re: [Broeders-Handel/NetworkGame1920] Server Stop/start Error (#33)
Seppe, ben jij op de master aan het werken? Simon krijgt plots dezelfde foutmelding als jou
On Wed, Apr 22, 2020, 14:11 Koen Hoof koenhoof@gmail.com wrote:
Seppe,
Hoor eens rond bij je collega's (of zoek eens in de code naar het woord 'invoke'). Jullie gebruiken dit al om tekst weer te geven.
Mvg,
Koen Hoof
On Wed, Apr 22, 2020, 13:01 seppevs162 notifications@github.com wrote:
Als ik buttons in de client probeer aan te passen krijg ik de melding "Het is niet toegestaan een bewerking uit te voeren via verschillende threads: er werd vanaf een andere thread toegang gekregen tot het besturingselement ConnectButton dan de thread waarop het element is gemaakt." Als ik het opzoek zie ik dat ik invoke moet gebruiken maar ik weet niet goed hoe. branch #33 https://github.com/Broeders-Handel/NetworkGame1920/issues/33 client.vb vanaf lijn 71
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/Broeders-Handel/NetworkGame1920/issues/33#issuecomment-617708099, or unsubscribe https://github.com/notifications/unsubscribe-auth/ANIC7VBCBEILSJ7CZBSNPZ3RN3FCJANCNFSM4LQLHC7Q .
— You are receiving this because you were assigned. Reply to this email directly, view it on GitHubhttps://github.com/Broeders-Handel/NetworkGame1920/issues/33#issuecomment-617774558, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ANIDB3IN5TPZYJHPL4OWAPTRN3V75ANCNFSM4LQLHC7Q.
Het zou inderdaad op dezelfde manier moeten werken. Controleer of je fout zeker daar zit. Ik zal het vanavond ook eens bekijken...
On Wed, Apr 22, 2020, 15:27 seppevs162 notifications@github.com wrote:
Ik heb dit als sub gezet, inspiratie gehaald bij de sub UpdateText. Maar ik krijg nog steeds dezelfde melding als ik de buttons wil enablen
Private Delegate Sub UpdateButDelegate(But As Button) Private Sub updateClient(but As Button) If but.InvokeRequired Then but.Invoke(New UpdateButDelegate(AddressOf updateClient), New Button) End If End Sub
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/Broeders-Handel/NetworkGame1920/issues/33#issuecomment-617777002, or unsubscribe https://github.com/notifications/unsubscribe-auth/ANIC7VHY3W7BCJXBIIP4GWTRN3WCVANCNFSM4LQLHC7Q .
De melding komt er op als ConnectButton.enabled = true wordt uitgevoerd dus ik veronderstel dat de fout daar zit
Ik heb dit als sub gezet, inspiratie gehaald bij de sub UpdateText. Maar ik krijg nog steeds dezelfde melding als ik de buttons wil enablen
Private Delegate Sub UpdateButDelegate(But As Button) Private Sub updateClient(but As Button) If but.InvokeRequired Then but.Invoke(New UpdateButDelegate(AddressOf updateClient), New Button) End If End Sub
Als een invoke nodig is dan voer je die uit. Wat als er geen invoke nodig is? Waar is jouw else?
2 fouten:
De server sluit nu correct af en je kan erna terug verbinden als de server terug is opgestart
Maak functie updateTextbox(txtbox as TextBox, message as string) die je voor elke textbox kan gebruiken.
Server stoppen/terug starten Updaten GUI
@ll-28441 Test eens Start server --> client connecteren --> server stoppen client moet disconnecteren en GUI moet aanpassen
EN server opnieuw starten, user moet opnieuw kunnen connecteren. Test ook met 2 users!
Alles getest GUI is in orde, 1 client werkt, 2 clients moet nog eens naar gekeken worden want werkt nog niet helemaal.
@ll-28441 Geef je een update?
Na 1 keer de server op te starten , te stoppen en terug op te starten geef een socket error