zoukankan      html  css  js  c++  java
  • 在DLL中怎么共用一个全局变量

    KeyLife富翁笔记
    作者: HongYuan
    标题: 在DLL中怎么共用一个全局变量
    关键字:
    分类: 开发经验
    密级: 保护
    (评分: , 回复: 0, 阅读: 190) »»

    有几个朋友经常向我问题在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;


    2005-10-27 13:11:13   
  • 相关阅读:
    druid spring监控配置
    深入理解Java:SimpleDateFormat安全的时间格式化
    Thread.join()方法
    static 作用
    Java链接SqlServer,学生数据管理面板
    java巅峰作业
    2019.6.12Java/IO data
    Java常用类
    2019.6.5
    java求和运算窗口5.29
  • 原文地址:https://www.cnblogs.com/ZhouXiHong/p/568213.html
Copyright © 2011-2022 走看看