728x90
- 콘솔코드를 윈도우 코드로 변환(1/3)
- 목차
- 콘솔 서버 코드를 윈도우 서버 코드로 옮기기
- 콘솔 클라이언트 코드를 윈도우 클라이언트 코드로 옮기기
- 문제점 살펴보기
- 콘솔 서버 코드를 윈도우 서버 코드로 옮기기
- 폼 디자인은 코드 설계이다.
- 폼디자인에 따라서 윈도우코드가 결정된다.
- 콘솔형 프로그래밍 특징 : 순차적인 논리
- 윈도우 프로그래밍 특징 : 이벤트에 따른 반응 논리
- 폼디자인은 코드량을 결정
- 기능에 따라 폼 디자인과 컨트롤 수가 결정
- 서버 ip 출력, 접속 시작 버튼, 클라이언트 ip 주소 출력, 송수신 시작
- 서버 Ip 주소 출력
- 호스트명 알아내기
- Dns.GetHostName();
public static string GetHostName() // static : 정적 함수! 객체를 생성하지않는다.
- 호스트 정보 가져오기
- Dns.GetHostEntry()
- public static IPHostEntry GetHostEntry(
string hostNameOrAddress
)
- IPHostEntry 는 컨테이너 클래스
- IPHostEntry.AddressList 속성
- public IPAddress[] AddressList {get; set; }
- ipv4 , ipv6 …… 둘다 포함되어있다.
- 우리는 현재 ipv4를 쓰고있기에 AddressList에서 ipv4를 걸러내서
사용해야 한다.
- 걸러내는 방법 제공 // ipv4 획득방법
- 열거형값을 구분 -> AddressFamily.InterNetwork
- addressList[index].AddressFamily == AddressFamily.InterNetwork 와같이 체크가능 ( interNetwork 가 ipv4 )
- TcpListener 적용
- TcpListener 정리
- TcpClient 연결, 정보를 가지고 연결하도록 대기 , 즉 관활하는것이 tcpListener
- TcpListener 생성
- 콘솔에서의 TcpListener 생성 코드 VS 윈도우 TcpListener 생성 코드
- 콘솔에서의 생성코드 : Main함수에 바로 생성
static void Main (string[] args )
{
TcpListener tcpListener = new TcpListener( 3000);
tcpListener.Start();
}
- 윈도우에서의 생성코드 : FormLoader에서 생성
- TcpListener.AcceptTcpClient
- TcpListener.AcceptTcpClient() 역할
- TcpClient 생성과 대기상태 유지
- 콘솔에서 TcpListener.AcceptTcpClient 형태 Main에서
static void Main(string [] args)
{
TcpListener tcpListener = new TcpListener ( 3000 );
tcpListener.Start();
TcpClient tcpClient = tcpListener.AcceptTcpClient() ;
}
- 윈도우에서 TcpListener.AcceptTcpClient
- 접속시작 버튼 클릭시 처리
- ' 접속 시작' 버튼 클릭시 처리 사항
- TcpClient 생성
- BinaryWriter / BinaryReader 생성
- 접속자 ip 얻기
- System.Net.EndPoint
- System.Net.DnsEndPoint
- System.Net.IPEndPoint
728x90
'기타 공부 기록 > csharpnetwork인강' 카테고리의 다른 글
콘솔코드를 윈도우 코드로 변환(3/3) ~ 스레드(1/2) (0) | 2022.01.19 |
---|---|
콘솔코드를 윈도우 코드로 변환(2/3) (0) | 2022.01.17 |
네트워크 클래스 (5/5) (0) | 2022.01.13 |
네트워크 클래스 (4/5) (0) | 2022.01.12 |
네트워크 클래스 (2/5) (0) | 2022.01.11 |