Главная страница | назад





Article #16726: 16bit to 32bit(shared global memory)

 Question and Answer Database
FAQ1726C.txt 16bit to 32bit(shared global memory)
Category :Windows API
Platform :All
Product :BC++ 5.x
Question:
I have a 16-bit DLL which has two primary funcions, e.g.
SET_VALUE(int) and RETRIEVE_VALUE(int *). Process A could call
SET_VALUE while process B could call RETRIEVE_VALUE of the same
DLL effectively using the global memory of the DLL as shared
memory of some sort. I tried porting this to Windows NT 4.0 but
the DLL appears to be given a seperate address space for each
process because this shared global memory "trick" no longer
functions. How can I accomplish this in a 32-bit DLL?
Answer:
There is no shared memory under win32 as we
used to have under win16. You need to use what is called "file
mapping", please see the online help (win32.hlp), click the
"Contents" tab and browse to the "Memory Managment" topic. It
has a sub topic called "Shared memory" wich explains all you
need to know.
5/18/98 8:56:55 AM

Last Modified: 01-SEP-99