일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Unity
- atmega328
- APP
- public
- static
- Barcode
- c++
- SERIAL
- 3D
- wpf
- Class
- aduino
- sensor
- Android
- UNO
- preprocessing
- java
- file access
- Read
- Contour
- mfc
- parameter
- compare
- flutter
- length
- Pointer
- stream
- memory
- digitalRead
- Encapusulation
- Today
- Total
폴크(FOLC)
데이터 공유 방법 ( 동일 PC ) 본문
# 일반적으로 프로세스간의 데이터를 공유하는 방법
-> 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, CFile::modeCreate | CFile::modeReadWrite) == TRUE)
{
pFileMem->Write(&sdata, sizeof(SHAREDFILEDATA));
pFileMem->Close();
}
delete pFileMem;
}
- 데이터 읽기
CString strFileName = _T("D:\\SharedMemFile.XXX");
CFile *pFileMem = new CFile;
if (pFileMem)
{
if (pFileMem->Open(strFileName, CFile::modeCreate | CFile::modeReadWrite) == TRUE)
{
pFileMem->Read(&sdata, sizeof(SHAREDFILEDATA));
pFileMem->Close();
}
delete pFileMem;
}
만약, 데이터 변경을 막아서 유일하게 데이터를 관리하고자 하는 경우에는
-> 한쪽에서는 CFile::modeWrite 으로 설정하고 다른 한쪽에서는 CFile::modeRead | CFile::shareDenyWrite 하여 한쪽 방향으로 데이터가 흐를수 있도록 설정
파일 접근 옵션
CFile::modeCreate
-> 파일 생성. 같은 이름을 가진 파일이 있다면 크기를 0으로 변경
CFile::modeNoTruncate
-> 같은 이름을 가진 파일이 있을 경우 크기를 0으로 바꾸지 않고 파일만 Open
CFile::modeRead
-> 읽기 전용 모드로 파일을 열거나 생성
CFile::modeReadWrite
-> 읽기와 쓰기 모드로 파일을 열거나 생성
CFile::modeWrite
-> 쓰기 전용 모드로 파일을 열거나 생성
CFile::shareDenyNone
-> 다른 프로세스에게 파일에 대한 읽기와 쓰기를 허용
CFile::shareDenyRead
-> 다른 프로세스에게 파일에 대한 읽기를 금지
CFile::shareDenyWrite
-> 다른 프로세스에게 파일에 대한 쓰기를 금지
CFile::shareExclusive
-> 다른 프로세스에게 파일에 대한 읽기와 쓰기를 금지
'C, C++, MFC > C, C++, MFC 테크닉' 카테고리의 다른 글
MFC - C++ 에서 코드 최적화 하는 방안 (0) | 2025.04.05 |
---|---|
MFC - Grid Control 적용하기 (0) | 2025.03.29 |
데이터 공유 방법 ( 동일 PC ) (0) | 2023.05.12 |
데이터 공유 방법 ( 동일 PC ) (0) | 2023.04.08 |
MFC 테크닉 - Chart 그리기 ( ChartDirector ) (0) | 2022.02.15 |