Re: Sockets / erste Schritte

Tech Tip: Click here to run a free scan for Windows Errors and optimize PC performance

From: Fritz Hilgemann (Fritzt.Hilgemann_at_siemens.com)
Date: 12/23/04


Date: Thu, 23 Dec 2004 10:15:38 +0100

Hallo Martin,

ich denke, es hat geklingelt. Der Listener überwacht praktisch nur die
Telefonleitung, die er mit Accept an einen neuen Sockt übergibt. Und dieser
kommuniziert two way. Und das Schöne ist, es funktioniert tatsächlich.

Also Danke!
Fritz

"Martin Bauer" <xy@ungeloest.de> wrote in message
news:32ti8uF3qecvgU1@individual.net...
>
> "Fritz Hilgemann" <Fritzt.Hilgemann@siemens.com> schrieb im Newsbeitrag
> news:cqbvlr$gbg$1@mail1.sbs.de...
> > Hallo NG,
> >
> > beim Thema "Sockets" befinde ich mich auf absolutem Neuland, also bitte
> > nicht gleich schimpfen, wenn die Fragen zu dumm sein sollten.
> > Um mal mit dem Thema anzufangen, habe ich jeweils einen simplen Listener
> und
> > Client analog zu einem CodeGuru Beispiel geschrieben. Der funktioniert
> auch,
> > nur weiß ich nicht genau, warum.
> > 1. Die Listener Applikation erstellt einen listening CSocket. Sobald
dort
> > OnAccept() aufgerufen wird, erstellt die Applikation ein leeres CSocket
> > Objekt. Anschließend wird die Receive() Methode des listening Sockts
> > aufgerufen, mit dem neu erstellten CSocket als Parameter. So steht's
auch
> in
> > der MSDN, aber ich frage mich, warum? Zum Lesen der Nachricht wird
nämlich
> > OnReceive() vom leeren CSocket aufgerufen, nicht vom Listening CSocket.
> Hat
> > das einen tieferen Sinn? Oder geht das nach der Methode "Ist halt
so..."?
> > 2. Wenn die Listener Applikation nun antworten soll (also über das
> > Acknowledge hinaus), kann sie dazu einen der beiden bereits
existierenden
> > Sockets gleich verwenden? Oder muß sie einen weiteren ClientSocket
> > instanziieren, diesen wiederum verbinden, usw.? Mit anderen Worten: Ist
> mit
> > jeweils zwei Sockets (ein Listening Socket und einem Client Socket) eine
> > two-way Kommunikation möglich, oder muß man weitere hinzufügen?
> > 3. Habe schon einiges im Internet zu diesem Thema abgesucht, aber noch
> keine
> > eingehenden Erläuterungen (meinetwegen auch "Step by Step") gefunden,
> > vielleicht kennt Ihr ja eine gute Source.
> >
> > Gruß
> > Fritz
> >
> >
>
> hallo,
>
> 1. es wird ein socket s_server erstellt.
> 2. auf den socket wird die funktion listen angewendet
> 3. auf den socket wird die funktion accept angewendet, diese Funktion
> blockiert.
> 4. ein client verbindet sich mit dem Server, accept liefert einen neuen
> Socket zurück, dieser ist _nicht_ leer !
> ( siehe accept in der msdn )
> 5. kann Daten Lesen und Schreiben auf diesem Socket, und sich so mit dem
> Client unterhalten.
>
> mfg
> Martin
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>



Relevant Pages

  • Re: Sockets / erste Schritte
    ... > Client analog zu einem CodeGuru Beispiel geschrieben. ... Die Listener Applikation erstellt einen listening CSocket. ... Anschließend wird die ReceiveMethode des listening Sockts ... > jeweils zwei Sockets eine ...
    (microsoft.public.de.vc)
  • Re: Recieveing Bulk of Messages of small size using Sockets
    ... Well, you should not be using SOCKET or CSocket at all, ever, under any circumstances. ... You have not shown either a sketch of the sending code or receiving code; ... I have a client server MFC Socket based application. ...
    (microsoft.public.vc.mfc)
  • Re: Problem mit Socket-Verbindung
    ... auswerten etc. dann kann ich den Socket erzeugen und ... Doch Du hast eher beschrieben WAS abläuft, aber der Grund für das Blockieren kam mir dabei jetzt etwas zu kurz. ... Also du rufst wie auch immer Accept() auf. ... Verbindet sich ein Client wird ein NEUER socket "cs" zurückgeliefert. ...
    (microsoft.public.de.german.entwickler.dotnet.csharp)
  • Re: Bug with Socket
    ... replace the following functions in MSocketSupport and CSocket. ... are you ignoring any specific socket errors? ... Dim strTemp As String ... Winsock API function ...
    (microsoft.public.vb.bugs)
  • Re: CAsyncSocket in a DLL, frequent crashes on close in DetachHandle
    ... doesn't have a message pump, so my socket was disfunctional - receiving ... my next step was to create and use the CSocket from a separate UI ... that the 'listener' therad was killed before I tried ...
    (microsoft.public.vc.mfc)