2_ 바삭바삭 프로그래밍/C# and Visual C++
C# - GPS_timer(2) : Server
준환이형님_
2010. 7. 23. 13:30
GPS_timer 는 크게 서버(PC역할_폼형식)와 클라이언트(단말기역할_콘솔형식)로 나누어져 있습니다. 서버는 단지 출력의 역할을 합니다.
실행시 클라이언트의 편의를 위해 자신의 아이피를 화면에 출력해 줍니다.
using System; using System.Net; using System.Net.Sockets; using System.Text; using System.Collections.Generic; using System.Linq; namespace server { class Program { static void Main(string[] args) { string st_message; IPHostEntry IPHost = Dns.GetHostByName(Dns.GetHostName()); IPAddress ip = IPAddress.Parse(IPHost.AddressList[0].ToString()); IPEndPoint endPoint = new IPEndPoint(ip, 8000);//인자값 : IPAddress,포트번호
Console.WriteLine("클라이언트의 요청을 기다리고 있습니다 (서버주소 : " + IPHost.AddressList[0].ToString()+")"); while (true) { //////////////////////////////////////////////////////////////////////////수신부 Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); socket.Bind(endPoint); socket.Listen(10); Socket clientSocket = socket.Accept(); Console.WriteLine("클라이언트로부터 데이터를 수신하였습니다."); byte[] receiveBuffer = new byte[512]; try { int length = clientSocket.Receive(receiveBuffer, receiveBuffer.Length, SocketFlags.None); string result = Encoding.UTF8.GetString(receiveBuffer, 0, length); Console.WriteLine("받은 데이터 : " + result); socket.Close(); } catch (SocketException e) { } } } } }