That's not totally true Ziggy. Regarding DLLs, this is only the standard behaviour, but not the only one possible.
GW was totally right, you can write a DLL that contains a special *shared* part.
Every program loading this DLL, when accessing to this specific memory section, will indeed access the same shared memory.
http://support.microsoft.com/kb/100634
It is also possible to use file mappings to implement a shared block of memory (CreateFileMapping with hFile = INVALID_HANDLE_VALUE):
http://msdn2.microsoft.com/EN-US/library/aa366537.aspx
http://msdn2.microsoft.com/en-us/library/ms686958.aspx
These two solutions are very common, but obviously they are windows specific.
GW was totally right, you can write a DLL that contains a special *shared* part.
Every program loading this DLL, when accessing to this specific memory section, will indeed access the same shared memory.
http://support.microsoft.com/kb/100634
It is also possible to use file mappings to implement a shared block of memory (CreateFileMapping with hFile = INVALID_HANDLE_VALUE):
http://msdn2.microsoft.com/EN-US/library/aa366537.aspx
http://msdn2.microsoft.com/en-us/library/ms686958.aspx
These two solutions are very common, but obviously they are windows specific.