主程序与DLL之间的全局变量问题
来源:互联网 发布:高级php工程师面试题 编辑:程序博客网 时间:2024/05/16 13:56
有几个朋友经常向我问题在DLL中怎么共用一个全局变量。比如像用户登陆后的用户名(UserName)...
其实这个问题很简单。下面我把我的做法写出来大家一起分享。
把共享的变量放在主程序里:UserName,....等等,
在主程序里写两个函数
Function CurUserName():PChar;
begin
Result:=pchar(UserName);
end;
procedure SetCurUserName(LoginUserName: PChar)
begin
UserName:=LoginUserName;
end;
然后在主程序的工程文件(*.dpr)里输出这两个函数里写
.....
{$R *.res}
exports
CurUserName, SetCurUserName;
....
这样在每个DLL里就可以使用这两个函数了
function CurUserName: PChar; //从主程序里获取当前登陆帐号
var
GetCurUserName: function: pchar;
begin
@GetCurUserName := GetProcAddress(GetModuleHandle(pchar(application.Exename)), 'CurUserName');
if Assigned(GetCurUserName) then //找到
result := GetCurUserName
else
result := 'admin';
end;
- 主程序与DLL之间的全局变量问题
- 主程序与DLL之间的全局变量问题
- 主程序与DLL之间的全局变量问题
- 主程序与DLL之间的全局变量问题
- 主程序与动态库之间的全局变量
- 解决扩展MFC DLL与主程序资源冲突问题
- 关于DLL中new在主程序中释放的问题
- qt dll的调用及与主程序的交互
- 写DLL引起与主程序资源冲突的解决方法
- MFC的DLL中调用函数指针与主程序交互
- 汇编语言的主程序与子程序之间的参数传递方式
- 动态库与主程序共享全局变量
- 动态库与主程序共享全局变量
- C51 中断+主程序读写全局变量遇到的问题及解决摘录
- 关于在主程序里面调用DLL时,找不到DLL里面的路径问题
- 利用回调函数实现DLL与Qt主程序的数据交互,进一步实现对Qt主程序中的信号触发
- dll 释放时主程序最小化的问题解决
- Dll中的窗体嵌入主程序的Panel
- 暴笑------[图片]哇有靓妞
- 项目开发管理经验交流
- 2005年的最后一天
- books.google.com
- Spring IDE安装和配置
- 主程序与DLL之间的全局变量问题
- 辞旧迎新,年度总结,展望2006
- 记号
- 整理出C#(.net)的常用函数和方法集
- 亏欠你真多 [光碟]
- 让nvidia跑起来了
- 05年总结及06年计划
- STL vector 容器实现
- 如何查找和杀死一个进程