태블릿 스레드 간에 공유되는 메모리에 대한 액세스를 제공합니다.
구문
HRESULT UseSharedMemoryCommunications(
[in] DWORD pid,
[out] DWORD *phEventMoreData,
[out] DWORD *phEventClientReady,
[out] DWORD *phMutexAccess,
[out] DWORD *phFileMapping
);
매개 변수
-
pid [in]
-
프로세스 ID입니다.
-
phEventMoreData [out]
-
새 데이터를 처리할 수 있을 때 신호를 전송하는 이벤트 핸들입니다.
-
phEventClientReady [out]
-
클라이언트가 데이터를 받을 준비가 되었음을 알리는 데 사용되는 반환된 이벤트 핸들입니다. 새 데이터를 처리한 후 신호를 보냅니다.
-
phMutexAccess [out]
-
공유 메모리에 대한 액세스 권한을 부여하는 뮤텍스입니다.
-
phFileMapping [out]
-
공유 메모리 블록에 대한 포인터입니다.
반환 값
이 메서드는 이러한 값 중 하나를 반환할 수 있습니다.
| 반환 코드 | Description |
|---|---|
|
성공. |
|
지정되지 않은 오류가 발생했습니다. |
설명
UseSharedMemoryCommunications 메서드는 태블릿 PC 공유 메모리 프로토콜의 일부로 사용됩니다. Wisptis 서비스는 높은 무결성 수준(IL)을 가지기 때문에 권한을 상승시킬 필요 없이 공유 메모리에 저장된 데이터를 저장하고 액세스할 수 있습니다.
SHAREDMEMORY_HEADER 구조는 파일 매핑에서 참조하는 데이터에서 캐스팅되고 원시 패킷 데이터는 SHAREDMEMORY_HEADER 따릅니다. pdwEventClientReady에서 참조하는 이벤트가 발생하면 공유 메모리에서 원시 패킷 데이터를 읽을 수 있습니다.
다음 목록에서는 공유 메모리에 액세스하고 사용하기 위한 이벤트 시퀀스를 설명합니다.
- 클라이언트는 clientReady 이벤트를 설정합니다.
- 클라이언트는 moreData 이벤트를 기다립니다.
- 클라이언트는 뮤텍스를 획득합니다.
- 클라이언트는 패킷 뒤의 헤더 및 일련 번호 뒤에 있는 공유 메모리 섹션에서 패킷 데이터를 읽습니다.
- 클라이언트는 dwEvent 값에 따라 데이터를 처리합니다.
- 클라이언트는 -1(0xFFFFFFFF)을 dwEvent에 씁니다.
- 클라이언트는 뮤텍스를 해제합니다.
- 클라이언트는 clientReady 이벤트를 설정합니다.
요구 사항
| 요구 사항 | 값 |
|---|---|
| 지원되는 최소 클라이언트 |
Windows XP 태블릿 PC 버전 [데스크톱 앱만 해당] |
| 지원되는 최소 서버 |
지원되는 버전 없음 |
| 라이브러리 |
|