Toon posts:

[vb] Winsocket geeft error

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben in vb bezig met winsockets, gaat allemaal wel leuk. :)
alleen nu laat ik een winsocket luisteren op bv. port 900, en dan typ ik in me browser: [url="http://localhost:900/"]http://localhost:900/[/url] en ros op enter.
dan crashed me prog, met de volgende error:
40020:
Invalid operation at crurrent state

iemand een idee hoe ik dit kan verhelpen? :D

  • pjonk
  • Registratie: November 2000
  • Laatst online: 29-12-2025
Denk dat het handig is dat je even wat code post.
Dan kunnen we zien waar misschien een fout kan optreden.

Weet je eigenlijk waar het fout gaat :?

edit:

O ja accept je wel eerst de ConnectionID in je Connection_request event anders kan je nog geen data verzenden
De foutmelding duidt erop dat je data wil verzenden terwijl er nog geen connectie is

It’s nice to be important but it’s more important to be nice


  • farlane
  • Registratie: Maart 2000
  • Laatst online: 06-09 22:39
Je protocol naar UDP zetten.

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


  • igmar
  • Registratie: April 2000
  • Laatst online: 23-08 16:57

igmar

ISO20022

Op dinsdag 28 mei 2002 18:49 schreef blasty het volgende:
Ik ben in vb bezig met winsockets, gaat allemaal wel leuk. :)
alleen nu laat ik een winsocket luisteren op bv. port 900, en dan typ ik in me browser: [url="http://localhost:900/"]http://localhost:900/[/url] en ros op enter.
dan crashed me prog, met de volgende error:
40020:
Invalid operation at crurrent state

iemand een idee hoe ik dit kan verhelpen? :D
Je doet een operatie (listen, accept) terwijl de socket geen connected state heeft. Meer valt er niet over te zeggen zonder wat code

Verwijderd

Een listen-socket moet je eerst closen voordat je kan accepten:
code:
1
2
3
4
    With m_objWinSock
      Call .Close
      Call .Accept(requestID)
    End With

  • Error65
  • Registratie: Oktober 2001
  • Laatst online: 12-01-2023

Error65

Error Inside

Op dinsdag 28 mei 2002 19:58 schreef Debbus het volgende:
Een listen-socket moet je eerst closen voordat je kan accepten:
code:
1
2
3
4
    With m_objWinSock
      Call .Close
      Call .Accept(requestID)
    End With
Een listen-socket hoef je helemaal niet eerst te sluiten! Je kan em ook gewoon door laten luisteren zodat je meerdere verbindingen kunt maken!

http://www.uitdehoogte.nl/bert


Verwijderd

Topicstarter
Winsock2.LocalPort = Text5.Text
Winsock2.Listen

het uberkorte stukje waar ik mee luister

Private Sub Winsock2_ConnectionRequest(ByVal requestID As Long)
Winsock2.Accept requestID
End Sub

het stukje als er een conn. request is

Private Sub Winsock2_DataArrival(ByVal bytesTotal As Long)
Dim Received As String
Winsock.GetData Received, , bytesTotal
Text1.Text = Text1.Text & Received
En Sub

het stukje om data in een textbox te goooien

  • pjonk
  • Registratie: November 2000
  • Laatst online: 29-12-2025
Op dinsdag 28 mei 2002 21:00 schreef blasty het volgende:
Private Sub Winsock2_DataArrival(ByVal bytesTotal As Long)
Dim Received As String
Winsock.GetData Received, , bytesTotal
Text1.Text = Text1.Text & Received
En Sub

het stukje om data in een textbox te goooien
Moet
Winsock.GetData Received, , bytesTotal

Niet
Winsock2.GetData Received, , bytesTotal

worden :?

It’s nice to be important but it’s more important to be nice


Verwijderd

Topicstarter
hmm, damn zit wat in:)

Verwijderd

Topicstarter
mope, dezelfde error

  • pjonk
  • Registratie: November 2000
  • Laatst online: 29-12-2025
Op dinsdag 28 mei 2002 21:06 schreef blasty het volgende:
hmm, damn zit wat in:)
Wat 1 cijfertje al niet kan uitmaken he :)
edit:

Print anders in een Messagebox de Winsock2 state voordat je die data ophaalt.

It’s nice to be important but it’s more important to be nice


  • Sponge
  • Registratie: Januari 2002
  • Laatst online: 28-08 17:06

Sponge

Serious Game Developer

Denk dat het simpel is... je probeert nog een verbinding te maken terwijl er al een open is. Internet Explorer probeert meerdere keren te verbinden, waarschijnlijk. (en dat gaat een keer goed, maar daarna is die socket in gebruik, moet je dus een nieuwe aanmaken of de andere sluiten, check Control arrays)

Check www.pscode.com en zoek op "Webserver" denk dat je dan zeker wel wat hulp vindt. Zelf heb ik er een unieke (zover ik weet) Winsock API webserver staan...

Verwijderd

Topicstarter
nope, als ik een enkele connectie met telnet maakt crasht ie ook :)

  • Sponge
  • Registratie: Januari 2002
  • Laatst online: 28-08 17:06

Sponge

Serious Game Developer

Waar ontstaat het probleem dan? ...
Pagina: 1