社区
ATL
帖子详情
DLL中静态变量的互相影响问题
fool_leave
2004-11-05 11:38:11
写了一个嵌入IE工具条的DLL,里面用到了静态变量。结果一旦在IE中新打开另一个子IE,那个静态变量的值就不对了,好像在这两个IE中启动的Dll是共用同一个静态变量的。
我想用本地线程存储(TLS)来解决,但我的工程是支持MFC的ATL工程,DllMain函数被封装了。我怎么才能够知道我的Dll在何时被DLL_PROCESS_ATTACH,何时又DLL_THREAD_ATTACH了呢?
我该怎么办?
...全文
50
回复
打赏
收藏
DLL中静态变量的互相影响问题
写了一个嵌入IE工具条的DLL,里面用到了静态变量。结果一旦在IE中新打开另一个子IE,那个静态变量的值就不对了,好像在这两个IE中启动的Dll是共用同一个静态变量的。 我想用本地线程存储(TLS)来解决,但我的工程是支持MFC的ATL工程,DllMain函数被封装了。我怎么才能够知道我的Dll在何时被DLL_PROCESS_ATTACH,何时又DLL_THREAD_ATTACH了呢? 我该怎么办?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
全局/
静态变量
跨模块(
DLL
)引用
全局/
静态变量
作用范围为整个模块(exe\
dll
),如果其他模块需要引用必须显示导出,类内部的
静态变量
一样,只是引用范围需要加上类的作用域,这个从类
中
声名
静态变量
,但是要在CPP
中
定义该变量可以看出,跟全局变量是...
dll
多次实例化
静态变量
共享
问题
(linux,windows)
dll
多次实例化时,系统会为每个实例分配独立的内存空间,
静态变量
也不例外,要想多个
dll
实例共用同一
静态变量
,目前查到最好的方法是通过编译参数,实现这个目的。Linux和Windows下均有各自的方法。 以下是我觉得...
DLL
中
局部
静态变量
释放时间
DLL
中
存在一个日志记录系统,采用单件形式编写,单件实例的获取采用局部静态对象的方式。主控制类也采用了单件,单件实例获取同前。 1、主线程装载
DLL
,调用
DLL
接口并创建了主控制类单件; 2、WorkThread1
中
首次
关于C#的
dll
中
类的静态成员变量
HsInterface.
dll
调用了DBAccessLib.
dll
,主程序调用了HsInterface.
dll
和DBAccessLib.
dll
,那么也就是说DBAccessLib.
dll
被主程序直接调用和间接调用,那么DBAccessLib.
dll
中
的类的static成员变量如果在主程序
中
被赋值...
C++
静态变量
初始技巧
说在前面 首先要明确以下几点: C++
中
全局
静态变量
和静态成员变量(以下简称
静态变量
,其他类型的变量会单独说明)的初始化顺序由编译器决定,...只要某一个模块(exe程序,
dll
库)被加载,那么该模块
中
的
静态变量
一
ATL
3,245
社区成员
48,539
社区内容
发帖
与我相关
我的任务
ATL
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
复制链接
扫一扫
分享
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章