User mode interprocess communication using shared memory in Windows. This allows you to have a dedicated process to writing, and a dedicated process to reading the same memory. Useful for extracting data out of a process. Example source code updates an entity buffer with random information from a DLL, which is later printed out by the main process (separate EXE).
for (int i = 0; i < NUM_ENTITIES; i++)
{
auto* ent_pointer = &header->entities[i];
memcpy(ent_pointer->name, "SSNO\0", 5);
ent_pointer->x = (float)rand() / RAND_MAX * (420);
ent_pointer->y = (float)rand() / RAND_MAX * (420);
ent_pointer->z = (float)rand() / RAND_MAX * (420);
}