본문 바로가기
728x90
반응형

전체 글82

DNS (Dns 클래스) 보통 IP 주소를 기억하기 힘들기 때문에 호스트명 을 사용하여 어떤 컴퓨터 인지를 표현 하는데 로컬 네트워크 에서는 보통 컴퓨터 명을 호스트명 으로 하고 인터넷 상에서는 호스트 이름과 도메인 이름을 사용한다 예를 들어 로컬 에서는 AlexPC 와 같은 호스트 명을 사용할 수 있고 인터넷 상에서는 www.naver.com 과 같은 호스트명 을 사용한다호스트/도메인 명에서 IP 주소 얻기호스트/도메인 명을 IP 주소로 변경하기 위해서는 DNS 를 사용하는데 .NET 에서는 Dns 클래스를 통해 호스트 정보를 얻어 올 수 있다 Dns.GetHostEntry(호스트명) 메서드는 정적 메서드로서 호스트명에 대한 IP 정보 Alias 정보 등을 리턴하는데 이렇게 리턴되는 정보를 IPHostEntry 객체에 담게 된.. 2024. 10. 11.
Win Sock 과 .NET 클래스 소켓 API네트워크 프로그래밍에 있어 소켓(socket)은 네트워크 표준 API로 여겨지고 있는데. 소켓은 버클리 유닉스 (BSD Unix) 에서 처음 개발되었으며 다양한 OS 에서 네트워크 표준으로 사용되고 있다. 예를들어 소켓 API는 가장 대중적인 TCP/IP를 비롯하여 AppleTalk, IPX 프로토콜 등에 사용된다.NET 네트워크 클래스.NET Framework 는 WinSock API를 사용하기 위해 Wrapper 클래스들을 제공하고 있는데 핵심 클래스로 System.Net.Sockets 네임스페이스 안에 있는 TcpClient, TcpListner, UdpClient, Socket 클래스들이 있다.TcpClient는 TCP 클라이언트를 위한 기능들을 제공하고, TcpListner는 TCP .. 2024. 10. 11.
시리얼 통신 시리얼 통신(Serial Port)시리얼 포트는 하나의 비트 단위로 정보를 주고 받을 수 있는 직력 통신의 물리적 인터페이스로서 다양한 주변 기기와의 통신에 사용한다. 시리얼 포트는 일반적으로 rs-232 표준을 따르는 하드웨어로서 모뎀이나 직렬 마우스, 바코드 리더 , 디지털 측정 장비 등 다양한 주변 기기를 시리얼 포트에 연결 하여 사용할 수 있다..net 에서 시리얼 포트를 사용하기 위해서는 System.IO.Ports 네임스페이스 안에 SerialPorts 클래스를 이용 하면 된다. SerialPort 클래스를 사용하는 절차는 크게 5단계로 나눈다SerialPort Class 객체 생성(Optional)SerialPort 포트 셋팅시리얼포트 오픈시리얼 포트에서 데이터 읽기나 쓰기시리얼 포트 닫기/.. 2024. 10. 10.
시리얼 통신(Serial Port) 시리얼 포트를 사용해 스케너로 바코드 읽기시리얼 통신을 이용해 스케너 로 바코드를 읽는 윈폼 예제를 만들어 보았다기본적인 형태는 이렇게 만들었다COM 포트를 설정 할 수 있는 콤보 박스연결 , 해제 버튼상태 레이블송수신 창 과 보내기 버튼serialPort1 컨트롤using System.IO.Ports; // 시리얼통신을 위해 추가우선 네임스페이스 를 선언 해주고 private void Form1_Load(object sender, EventArgs e) { comboBox_Port.DataSource = SerialPort.GetPortNames(); // 연결 가능한 시리얼 포트 이름을 가저오기 }Form1 이 실행되면 DataSource, GetPortName을 통해 연결 가능한 시리얼 포트.. 2024. 10. 10.
Delegate 에서 Event 모든 이벤트는 특수한 형태의 delegate이다 C#의 delegate 기능은 경우에 따라 잘못 사용될 소지가 있다. 예를 들어 우리가 Button 컨트롤을 개발해 판매한다고 하면 이 컨드롤 은 delegate 필드를 가지고 있고 버튼 클릭 시 InvokeList에 있는 모든 메서드 들을 차례로 실행하도록 하였다 그런데 Button 컨트롤을 구입한 개발자가 한 컴포넌트 에서 추가 연산(+=)을 사용 하지 않고 실수로 할당 연산자(=)를 사용하였다고 가정하자 이 할당 연산은 기존에 가입된 모든 메서드 리스트를 지워버리고 마지막에 할당한 메서드 한 개만 InvokeList에 넣게 할 것이다 즉, 누그든 할당 연산자를 한번 사용하면 기존에 가입 받은 모든 메서드 호출 요구를 삭제하는 문제가 발생한다이러한 문제.. 2024. 10. 7.
C# Delegate Delegate메소드에 대한 참조 델리게이트도 하나의 데이터 형식으로 인스턴스 메소드 , 정적 메소드 모드 참조가능하다 델리게이트는 값이 아닌 “코드”자체를 넘기고 싶을때 사용한다예를 들어 어떤 데이터들을 정렬 해야 할 때 다양한 정렬 조건이 있을 수 있는데 이때 원하는 정렬 조건에 대한 메소드만 꺼내주면 된다void RunA(int i){......}위와 같이 하나의 함수가 있다고 가정하면 이 함수는 정수 하나를 파라미터로 받아들인다 이 함수를 호출하기 위해서는 다음과 같이 정수를 메서드 파라미터로 넘기면 된다int j = 1234;RunA(j);더 복잡한 경우로는 다음과 같이 클래스 객체를 넘기는 경우를 생각해 볼 수 있다void RunB(TestClass c){ .....}이 경우는 위의 int 와.. 2024. 10. 2.
728x90
반응형