多个进程调用同一个DLL文件,想在DLL中共享数据,可以使用共享段的方法.在DLL中的声明如下:
(1)在DLL中
#pragma data_seg("ShareData")
__declspec(dllexport) BYTE szKeyName[3] = {};//变量须初始化
#pragma data_seg()
#pragma comment(linker, "/SECTION:ShareData,RWS")//***
也可在.def文件中声明代替***行
SETCTIONS
ShareData READ WRITE SHARED
(2)调用
在调用程序中声明如下:
__declspec(dllimport) BYTE szKeyName[3];
然后象普通变量一样调用,如:
void Ctest1Dlg::OnBnClickedButton5()
{
TRACE(_T("%d"),szKeyName[1] );
}
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。