WSP22

LJM·2023년 8월 9일
0

컴퓨터지식

목록 보기
23/41

메일 슬롯 구성을 위해 필요한 요소

Receiver 가 준비해야 할것에 대해서 알아보자

우체통을 생성해야 한다
HANDLE CreateMailslot()

커널 오브젝트의 핸들이 반환됨을 알 수 있다 메일슬롯도 커널에 의해서 관리되는 리소스이기 대문에 커널 오브젝트가 더불어 생성된다

Sender 가 준비해야 할것에 대해서 알아보자

Receiver 가 만들어 놓은 메일슬롯의 주소를 알아야한다.
\\computername\mailslot\[path]name

데이터를 보내기 위해 주소 정보를 담고 있는 리소스 생성

해당 주소의 메일 슬롯 개방. 데이터를 전송하기위한 데이터 스트림형성
hMailSlot = CreateFile("\\\\.\\mailslot\\mailbox", ....  );

데이터를 전송하기

CHAR message[50];
WriteFile(hMailSlot, message, ..... );

메일슬롯은 파일이 아니다 그럼에도 파일입출력 함수를 사용해서 데이터를 주고 받는다.
메일슬롯은 Windows 파일 시스템을 기반으로 구현되어있다

\\computername\mailslot\[path]name

메일슬롯은 동일한 네트워크 도메인에 존재하는 호스트들 사이의 데이터 전달을 목적으로도 사용될 수 있다 그러나 여러분이 현재 사용하고 있는 호스트는 이러한 환경이 구성되어 있지 않을 것이다 그래서 위 샘플코드의 computer 부분에 '.' 을 넣어 둔 것이다. 로컬 컴퓨터를 의미한다

[path]name

은 실질적인 메일슬롯 이름이다. 위 예제에서는 이름을 'mailbox' 로 하고 있다

[path]name

은 path 정보를 포함해서 계층 구조의 형태로 보다 체계화 할 수 있다
\.\mailslot\abc\def\mailbox

profile
게임개발자 백엔드개발자

0개의 댓글