DLL для работы с разделяемой памятью
Нужна помощь в написании dll для работы с разделяемой памятью.
Исходник в архиве. Принцип работы: функцией InitForPut() выполняется инициализация передатчика данных, функцией PutToMemory() - перадача данных (строка не известной длины, только заведамо известно, что она не более установленного размера). После выполнения инициализации передатчика инициализируется приемник (InitForGet()), и затем выполняется прием данных функцией GetFromMemory(). Обе функции инит выполняются один раз на старте обменивающихся данными программ, затем постоянно выполняются функции PutToMemory() и GetFromMemory(). Около минуты все работает нормально, затем функция MapViewOfFile() из функции GetFromMemory() возвращает NULL и всё, после этого и в PutToMemory() функция MapViewOfFile() фозвращает NULL и на этом обмен данными заканчивается.
Нужна помощь в работе над этой dll.