LARGE_INTEGER Li;
UNICODE_STRING name;
OBJECT_ATTRIBUTES oa;
SIZE_T j;
PVOID RequestBuf;
HANDLE hSection
Li.HighPart=0;
Li.LowPart=12; //размер буфера
j=12;
RequestBuf=0;
RtlInitUnicodeString(&name, L"\\BaseNamedObjects\\MyName");
InitializeObjectAttributes(&oa, &name, 0, 0, 0);
ZwCreateSection(&hSection, SECTION_ALL_ACCESS, &oa, &Li, PAGE_READWRITE, SEC_COMMIT, NULL);
ZwMapViewOfSection(hSection, NtCurrentProcess(), &RequestBuf, 0, 12, NULL, &j, ViewShare, 0, PAGE_READWRITE);
ZwClose(hSection)
(в конце надо сделать ZwUnmapViewOfSection)
API процесс прочитает эту память также открыв секцию "MyName" и сделав MapViewOfFile, если я не ошибаюсь