多进程中的DLL中共享数据段
平台:windowsXP VC6sp6
我编写了一个DLL, 我希望通过以下代码向让nCount在所有加载该DLL的进程中共享变量nCount,但是事实上Share数据段并没有共享。我用IDApro看Share数据段的flag是: Data Readable Writable
#pragma data_seg( "Shared ")
int nCount = 0;
#pragma data_seg()
#pragma comment(linker, "/section:Shared, rws ") //*
然后,我换了个方法:在def文件中添加以下一句话,
SECTIONS
Shared READ WRITE SHARED
并把上面代码中*标示的那句删除,Share段就被共享了。
IDApro显示中,flag:Data Shareable Readable Writable
请问为什么第一种方法达不到共享的目的?
[解决办法]
#pragma comment(linker, "/section:Shared,rws ")
中间不要加空格
[解决办法]
"/section:Shared, rws " 试试删除rws前面的空格