anoniem Geplaatst: 20 maart 2002 Delen Geplaatst: 20 maart 2002 Hallo, ik wou wel eens kijken hoe winsock werkt en heb daarom het volgende progje gemaakt: [code:1:c52f86dda4] Private Sub Form_Load() Winsock.RemotePort = tPort.Text Caption = "WinSock Tutorial - TCP Client @ " & Winsock.LocalHostName End Sub Private Sub Winsock_DataArrival(ByVal bytesTotal As Long) Dim strData As String Winsock.GetData strData tDisplay.Text = strData MsgBox strData End Sub Private Sub bConnect_Click() Winsock.RemoteHost = tIP.Text Winsock.Connect End Sub Private Sub Form_Unload(Cancel As Integer) Winsock.Close End Sub [/code:1:c52f86dda4] De elementen spreken voor zich denk ik... winsock is een Winsock.... tIP is een textfield voor de host tPort is een textfield voor de poort (duh) bConnect...tja Wanneer ik connect zegt netstat in dos dat de verbinding er wel is maar ik krijg geen respons van de server (winsock_dataArrival) Hoe kan dit? Haike Quote Link naar reactie
anoniem Geplaatst: 20 maart 2002 Auteur Delen Geplaatst: 20 maart 2002 Dat hangt er van af wat de server doet, met alleen deze client kan ik er niet veel over zeggen... Quote Link naar reactie
anoniem Geplaatst: 20 maart 2002 Auteur Delen Geplaatst: 20 maart 2002 Je mist idd de server. Ook heeft client geen send gedeelte. In de help van vb staat een simpel voorbeeld dat precies zo werkt als jij hier aan het maken bent. Quote Link naar reactie
anoniem Geplaatst: 21 maart 2002 Auteur Delen Geplaatst: 21 maart 2002 en als de server een webserver is? Quote Link naar reactie
anoniem Geplaatst: 22 maart 2002 Auteur Delen Geplaatst: 22 maart 2002 Dan is het nog logischer, want de webserver verwacht dat jij bij het Connect event een HTTP request stuurt, hoe moet ie anders weten welke pagina je opvraagt :razz: [edit] Nog een tip, jij doet 'tDisplay.Text = strData', maar de data kan ook in stukken aankomen, dus gebruik 'tDisplay.Text = tDisplay.Text & strData'. TCP/IP: de pakketten komen gegarandeerd aan (hardware failure uitgezonderd) en in de juiste volgorde, maar je kan nooit vantevoren weten hoe ze worden opgesplits. Zelfs een simpel commando als 'TEST' kan nog worden opgesplits theoretisch. Onthou dat, scheelt je een hoop problemen met sockets :wink: [/edit] _________________ Te audire no possum. Musa sapientum fixa est in aure. [ Dit Bericht is bewerkt door: MarkVR op 2002-03-22 09:31 ] Quote Link naar reactie
anoniem Geplaatst: 22 maart 2002 Auteur Delen Geplaatst: 22 maart 2002 Aha, en een HTTP-request, is dat een bepaalde string die je moet sturen. Pagina-naam of nog iets anders? Alvast bedankt, Haike Quote Link naar reactie
anoniem Geplaatst: 23 maart 2002 Auteur Delen Geplaatst: 23 maart 2002 Hoi, Over HTTP kun je wat vinden in RFC2616, die je o.a. kunt vinden op ftp://ftp.isi.edu/in-notes/rfc2616.txt Omdat je dit progje toch alleen maar maakt om WinSock te proberen, denk ik dat je in dit geval eens verbinding kunt zoeken naar een andere service waar de server het eerste iets stuurt, bijvoorbeeld SMTP (op 25), POP3 (op 110) of FTP (op 21). Groet, Phedny Quote Link naar reactie
anoniem Geplaatst: 25 maart 2002 Auteur Delen Geplaatst: 25 maart 2002 bedankt, het werkt nu. ik kan verbinding maken en de services antwoorden keurig. Nu probeer ik echter het programma op te starten in XP en nou zegt ie dat ie mswinsck.ocx niet kan vinden. winsock.dll staat wel op de computer. Wat moet ik hier aan doen? Haike Quote Link naar reactie
anoniem Geplaatst: 25 maart 2002 Auteur Delen Geplaatst: 25 maart 2002 mswinsck.ocx meekopieren? De DLL is anders dan de OCX. De OCX is een wrapper rond de DLL speciaal gemaakt voor VB :smile: Quote Link naar reactie
anoniem Geplaatst: 25 maart 2002 Auteur Delen Geplaatst: 25 maart 2002 mm, en kan dat niet anders dan? Het moet toch ook mogelijk zijn om winsock direct aan te roepen of niet? Gr, Haike Quote Link naar reactie
anoniem Geplaatst: 25 maart 2002 Auteur Delen Geplaatst: 25 maart 2002 Jawel, het is best mogelijk, zoek alle API functies op en ga uitzoeken hoe ze werken, of ga op zoek naar prefabricated code die het iets makkelijker voor je maakt, maar geloof me, direct de Winsock API aanroepen in VB is niet makkelijk en je programma kan er vrij instabiel van raken... Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen