Socket Basic Programming Service:
Using system.net;
Using system.net.sockets;
Using system.text;
Using system.threading;
Thread mythread;
Socket socket;
// Clean all the resources being used.
Protected Override Void Dispose (Bool Disposing)
{
Try
{
Socket.close (); // Release Resources
mythread.abort (); // Abort thread
}
Catch {}
IF (Disposing)
{
IF (Components! = NULL)
{
Components.dispose ();
}
}
Base.dispose (Disposing);
}
Public static ipaddress getServerip ()
{
IPHOSTENTRY IEH = DNS.GETHOSTBYNAME (DNS.GETHOSTNAME ());
Return IEh.AddressList [0];
}
Private void beginlisten ()
{
Ipaddress serverip = get Serverip ();
IpendPoint IEP = New IpendPoint (ServerIP, 8000);
Socket = new socket (addressfamily.internetwork, sockettype.stream, protocoltype.tcp);
Byte [] bytemessage = new byte [100];
THIS.Label1.Text = IEP.TOString ();
Socket.bind (IEP);
// DO
While (True)
{
Try
{
Socket.listen (5);
Socket newsocket = socket.accept ();
Newsocket.Receive (ByteMessage);
String stime = datetime.now.toshorttimeString ();
String msg = stime ":" "Message from:";
Msg = news.remoteEndPoint.toString () encoding.default.getstring (byteMessage);
This.ListBox1.Items.Add (MSG);
}
Catch (socketexception ex)
{
THIS.LABEL1.TEXT = EX.TOSTRING ();
}
}
// while (byteMessage! = Null);
}
// Start listening
Private void Button1_Click (Object Sender, System.Eventargs E)
{
Try
{
Mythread = New Thread (New ThreadStart (BeginListen));
mythread.start ();
}
Catch (System.exception ER)
{
Messagebox.show (Er.Message, "Complete", MessageBoxButtons.ok, MessageBoxicon.Stop;
}
}
Client:
Using system.net;
Using system.net.sockets;
Using system.text;
Private void button1_click (Object sender, system.eventargs e) {
Beginsend ();
}
Private void beginsend ()
{
String ip = this.txtip.text;
String port = this.txtport.text;
Ipaddress serverip = ipaddress.parse (IP);
INT ServerPort = Convert.Toint32 (Port);
IpendPoint IEP = New IpendPoint (ServerIP, Serverport);
Byte [] bytemessage;
// DO
// {
Socket Socket = New Socket (AddressFamily.InetNetwork, Sockettype.Stream, ProtocolType.tcp);
Socket.connect (IEP);
BYTEMESSAGE = Encoding.ASCII.GetBytes (TextBox1.text);
Socket.send (ByteMessage);
Socket.shutdown (socketshutdown.both);
Socket.close ();
//}
// while (byteMessage! = Null);
}