// 定义一个section的名字。
#define SECTION_NAME "1111"
// 在.obj当中定义该section为共享使用部分。
#pragma section(SECTION_NAME,read,write,shared)// 设置共享SECTION
// 向这个section当中放入共享的数据
__declspec(allocate(SECTION_NAME))
int idex = 0 // 必须进行初始化
具体解释如下:
相当于全局变量,
比如共享数据区里有一个 int x =100;
非共享数据区里有一个 iny y =100;
Dll 有一个函数: void IncX()
{
x ++;
y ++;
}
进程 A 调用: IncX(); 此时 x =101,y=101
进程 B 调用: IncX(); 此时 x =102,y=101
A.B中的 x 是同一个数,y是各自的
其他的方法:
#pragma data_seg( "Shard ")
DWORD dwValue=0;
#pragma data_seg()
#pragma comment(linker, "/section:Shard,rws ")