일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 3D
- wpf
- java
- aduino
- Encapusulation
- APP
- Read
- mfc
- preprocessing
- SERIAL
- memory
- Barcode
- UNO
- Unity
- Pointer
- Android
- Contour
- atmega328
- c++
- compare
- file access
- Class
- sensor
- digitalRead
- stream
- flutter
- parameter
- length
- public
- inheritance
- Today
- Total
목록IPC (4)
폴크(FOLC)
Named Pipe 방식 (CreateNamedPipe)1. 개요Windows에서 제공하는 고속 메모리 기반 IPC (Inter-Process Communication) 방식프로세스 간 실시간으로 스트림 혹은 메시지를 전송할 수 있음파일처럼 보이지만 진짜 파일은 아님구성 요소서버 프로세스:CreateNamedPipe 로 파이프 생성ConnectNamedPipe 로 클라이언트 연결 수신클라이언트 프로세스:CreateFile 로 파이프에 연결WriteFile, ReadFile 로 데이터 송수신동작 흐름서버가 \\.\pipe\MyPipe 라는 파이프를 생성클라이언트가 해당 파이프에 연결 시도연결 후 실시간 데이터 전송 가능 (버퍼 기반)장점실시간성 우수 (메모리 기반 통신)디스크 접근이 없어 빠름읽기/쓰기 작..

# 일반적으로 프로세스간의 데이터를 공유하는 방법 -> IPC : Inter-Process Communication - 윈도우 메시지 전달 방법 - TCP/IP 통신 이용 방법 - 공유 메모리 이용 방법 - 공유 파일 이용 방법 - 등등 # 2개의 PC에서 특정한 데이터를 공유 하고자 하는 경우에 이용한다. -> 공유 파일 이용 방법 -> CFile 클래스 이용 # 소스 코드 struct SHAREDFILEDATA { int AAA; int BBB; }; - 데이터 변경 CString strFileName = _T("D:\\SharedMemFile.XXX"); CFile *pFileMem = new CFile; if (pFileMem) { if (pFileMem->Open(strFileName, CFil..

# 일반적으로 프로세스간의 데이터를 공유하는 방법 -> IPC : Inter-Process Communication - 윈도우 메시지 전달 방법 - TCP/IP 통신 이용 방법 - 공유 메모리 이용 방법 - 공유 파일 이용 방법 - 등등 # 2개의 서로 다른 프로세스에서 특정한 데이터를 공유 하고자 하는 경우에 이용한다. -> 공유 메모리 이용 방법 -> WinAPI ( CreateFileMapping[생성], OpenFileMapping[연결], UnmapViewOfFile[해제] ) 함수를 이용 # 소스 코드 #define SHARED_MEM_NAME _T("shared_mem_test") struct SHAREDMEMDATA { int AAA; int BBB; }; - 생성 m_hHandle = C..

# 일반적으로 프로세스간의 데이터를 공유하는 방법 -> IPC : Inter-Process Communication - 윈도우 메시지 전달 방법 - TCP/IP 통신 이용 방법 - 공유 메모리 이용 방법 - 공유 파일 이용 방법 - 등등 # 2개의 서로 다른 프로세스에서 특정한 데이터를 공유 하고자 하는 경우에 이용한다. -> 윈도우 메시지 전달 방법 -> WM_COPYDATA 구조체를 이용 # 소스 코드 HWND process = ::FindWindow(NULL, _T("XXXXXX")); // 찾는 process 이름 if (process != NULL) { CString Value = _T("1"); // 전송하는 데이터 값 COPYDATASTRUCT data; data.dwData = 0x9999..