Hej! Ja, TCP Server/Client är det första man kommer att tänka på. För att lära sig grunden och att testa, är de ju intressant att prova ett kort exempel. Tack Ola och André! Varför uppfinna hjulet igen? Kolla "Microsoft Message Queuing"!Skicka "något" från en dator till en annan på intranet/internet
Om jag vill via ett program i en dator vill skicka korta texter, ex. bara en bokstav,
till en annan dator, vilket sätt ska jag kolla på då?
En dator med ett program med ett antal knappar.
Tryck på en knapp.
Ett meddelande (en bokstav eller annat?) tas emot i en annan dator på internet via dess ipnummer och en vald port.
Det verkar ju finnas en del olika lösningar
TCPServer TCPClient?
Pear to Pear?
Annat?
Den skickande datorn behöver ej få någonting tillbaka från den mottagande
om det gör det hela enklare.
/Pontus Sv: Skicka "något" från en dator till en annan på intranet/internet
(Peer to peer, som du menar, är en möjlig applicering av ett nätverksprotokoll, t.ex. kan man skriva en peer-to-peer app med hjälp av TCP)
Lite förenklat är TCP bara en ström av bytes som du kan läsa/skriva.
Det finns inget automatiskt "start" eller "slut", du måste programmera det själv om du ska utgå från TCP.
Om någon skickar två jättesnabba "A" till dig över nätverket kan du aldrig veta om de menade "AA" eller "A" och senare ett annat "A". (Om du verkligen bara är intresserad av om bokstaven "A" skickades från en annan dator då blir TCP perfekt!)
Jag gissar att du har högre ambitioner än så.
För att det ska bli rätt behöver du uppfinna en meddelande-standard, ett protokoll, som bestämmer vad som ÄR ett meddelande (Är "A" verkligen ett meddelande? eller en bugg?), hur det börjar, och hur det slutar. Men det är lite onödigt eftersom det redan finns (rätt många varianter av). T.ex. HTTP, som innehåller information om meddelandets slut (content-length). Vidare har man på denna grund byggt SOAP, REST, XML-RPC. De beskriver hur man skickar "saker" (objekt, meddelanden) i XML-format över HTTP (som i sin tur använder TCP). Google is your friend. I dag är best-practice att man utgår från sådana standarder om man vill skicka data mellan två datorer, i stället för att utgå från TCP. Men ditt största problem kommer inte vara detta, utan hur du ska komma förbi alla brandväggar som inte riktigt uppskattar att App X skickar "AAA" över TCP-port x.
Well, good luck :)Sv: Skicka "något" från en dator till en annan på intranet/internet
Finns fina exempel på MSDN:
Server
http://msdn.microsoft.com/en-us/library/system.net.sockets.tcplistener.aspx
Klient
http://msdn.microsoft.com/en-us/library/system.net.sockets.tcpclient.aspx
Det behövs inte många rader kod ;)Sv:Skicka "något" från en dator till en annan på intranet/internet
Lite att tänka på.
Jo, jag var faktisk bara intresserad av om det ex. kom ett "A" eller annan bokstav.
Det har dock ändrat sig lite. Kan man tänka sig... :-)
Får se var det slutar.
/PontusSv: Skicka "något" från en dator till en annan på intranet/internet
/Fim