반응형
원격 제어를 하겠다고 요청하는 클라이언트 클래스를 구현합니다.
소스 코드
SetupClient.cs
using System;
using System.Net;
using System.Net.Sockets;
namespace 원격제어기
{
/// <summary>
/// 원격 제어 요청 클라이언트 - 정적 클래스
/// </summary>
public static class SetupClient
{
public static event EventHandler ConnectedEventHandler = null;
public static event EventHandler ConnectFailedEventHandler = null;
static Socket sock;
/// <summary>
/// 원격 제어 요청 메서드
/// </summary>
/// <param name="ip">상대 IP 주소</param>
/// <param name="port">상대 포트 번호</param>
public static void Setup(string ip, int port)
{
IPAddress ipaddr = IPAddress.Parse(ip); //상대 IP 주소 개체를 생성
IPEndPoint ep = new IPEndPoint(ipaddr, port); //IP 단말 주소(IP주소 + 포트번호) 개체 생성
//TCP 소켓 생성(네트워크 주소 체계, 전송 방식, 프로토콜)
sock = new Socket(AddressFamily.InterNetwork, //네트워크 주소 체계
SocketType.Stream, //전송 방식
ProtocolType.Tcp);//프로토콜
//sock.Connect(ip, port);
sock.BeginConnect(ep, DoConnect, sock);
}
static void DoConnect(IAsyncResult result)
{
try
{
sock.EndConnect(result);
if(ConnectedEventHandler != null)
{
ConnectedEventHandler(null, new EventArgs());//연결 성공
}
}
catch
{
if(ConnectFailedEventHandler != null)
{
ConnectFailedEventHandler(null, new EventArgs());//연결 실패
}
}
sock.Close();
}
}
}
반응형
'프로젝트 > 원격 제어 프로그램 만들기' 카테고리의 다른 글
원격 제어 프로그램 만들기 - 6. 원격 제어 요청 수신 서버 구현 및 요청 수신 1차 테스트 (0) | 2020.05.09 |
---|---|
원격 제어 프로그램 만들기 - 5. 원격 제어 요청 수신 이벤트 인자 클래스 구현 (0) | 2020.05.09 |
원격제어 프로그램 만들기 - 3. MainForm 배치 (0) | 2020.05.09 |
원격제어 프로그램에서 작성할 형식 소개 (0) | 2020.05.08 |
1. 개요 (0) | 2020.05.03 |