uniGUI 通过SessionList操作另外的登录用户

uniGUI 通过SessionList操作另外的登录用户

(2015-10-09 16:32:54)

转载▼

  分类: uniGUI

参照bbs,写了这个方法,检查是否有同名用户已经登录:
procedure TUniMainModule.CheckSameUser(aUserLoginCode: string);
var
  ASessionList: TList;
  I: Integer;
  M: TUniMainModule;
  USession: TUniGUISession;
begin

UniServerModule.SessionManager.Sessions.Lock;
  try
    ASessionList := UniServerModule.SessionManager.Sessions.SessionList;
    for I := 0 to ASessionList.Count - 1 do
    begin
      USession := TUniGUISession(ASessionList[I]);
      M := USession.UniMainModule as TUniMainModule;
      if M.UserLoginCode = aUserLoginCode then//这里UserLoginCode是在MainModule中定义的一公共变量,用来保存用户登录代码,标示用户身份.
      begin
        M.ExitFlag:=True;  //ExitFlag也是在MainModule中定义的公共变量,表示是否退出.
        USession.TerminateAfterSecs(10);
        Break;
      end;
    end;
  finally
    UniServerModule.SessionManager.Sessions.Unlock;
  end;
end;

原文地址

时间: 2024-07-28 23:29:04

uniGUI 通过SessionList操作另外的登录用户的相关文章

Linux下查看/管理当前登录用户及用户操作历史记录

一.查看及管理当前登录用户 1.使用w命令查看登录用户正在使用的进程信息,w命令用于显示已经登录系统的用户的名称,以及他们正在做的事.该命令所使用的信息来源于/var/run/utmp文件.w命令输出的信息包括: 用户名称 用户的机器名称或tty号 远程主机地址 用户登录系统的时间 空闲时间(作用不大) 附加到tty(终端)的进程所用的时间(JCPU时间) 当前进程所用时间(PCPU时间) 用户当前正在使用的命令 $ w 23:04:27 up 29 days, 7:51, 3 users, l

Win下服务程序以当前登录用户执行操作

我们新建了一个网络映射,现在需要在我们的服务进程中访问这个远程磁盘,结果发现QueryDosDevice.NetUseEnum.GetLogicalDriveStrings均不可用.怎么办? 因为磁盘映射是和当前账户关联的,当账户登录之后才会存在这个盘符.(可以试试在同一个系统上建立两个账户,它们可以将不同的网络位置映射成同一个盘符.当然盘符只是一个逻辑符号,系统正真的符号是\Device\Mup和\Device\LanmanRedirector 的UNC形式标识,这样系统内部是不会重复的).

Linux 查看所有登录用户的操作历史

在linux系统的环境下,不管是root用户还是其它的用户只有登陆系统后用进入操作我们都可以通过命令history来查看历史记录,可是假如一台服务器多人登陆,一天因为某人误操作了删除了重要的数据.这时候通过查看历史记录(命令:history)是没有什么意义了(因为history只针对登录用户下执行有效,即使root用户也无法得到其它用户histotry历史).那有没有什么办法实现通过记录登陆后的IP地址和某用户名所操作的历史记录呢?答案:有的. 通过在/etc/profile里面加入以下代码就可

怎么设置登录名 登陆后只能看到和操作一个数据库 这个用户不能看到其他的数据库

怎样设置登录名 登陆后只能看到和操作一个数据库 这个用户不能看到其他的数据库一个服务器上有三个数据库 我想新建三个登录名 每个登录名登陆后只能看到对应的一个数据库 不能看到其余的两个 怎样进行设置呢 分享到: ------解决方案--------------------1. SQL数据库分配权限打开SQL-Server管理工具?安全性?登陆名?右键(新建登陆名) 输入相应的信息(这里要去掉强制实施密码策略,强制密码过期,用户在下次登录时必须修改密码的选择) 用户映射?选择我们要设置权限的数据库?

Linux系统下如何查看已经登录用户

Linux系统下如何查看已经登录用户 虽然前面介绍了用户管理,但是那部分主要是管理用户的帐号,也就静态的用户列表.而LINUX是个多用户系统,一旦连接到网络中,它可以同时为多个登录用户提供服务.系统管理员可以随时了解系统中有那些用户,用户都在进行什么操作. 查看用户的操作 系统管理员若想知道某一时刻用户的行为,只需要输入命令W 即可,在SHELL终端中输入如下命令: [[email protected] ROOT] # W2:31PM UP 11 DAY ,21:18 4 USERS, LODE

在SQL Server 2008 中使用SQL脚本创建登录用户并授权

到处都使用超级用户sa显然是不安全的,因此有创建用户并让其只能访问某个数据库的必要.当然可以使用SQL Server自带的图形界面向导,但是太难用用了!有时候代码比较直接,比如这里: --使用已经创建好的数据库 use mydb GO --创建登录用户和密码 EXEC sp_addlogin N'mydb_user','123456' --使mydb_user成为当前数据库的合法用户 EXEC sp_grantdbaccess N'mydb_user' --授予mydb_user对自己数据库的所

VM虚拟机系统时间同步网络时间并登录用户自动校正时间

VM虚拟机大家都用,我在用完后,经常使用"挂起客户机",但是这样一来,系统恢复启动很快,但是少了正常的系统自检,包括和网络同步时间. 今天在虚拟机上测试"find /root/Text -mtime +3 -name "Service.log.*" -exec rm -f {} \;",总是不成功,反复看了几遍,也对照网上格式,命令没写错,结果无意中发现系统时间是上次"挂起"的时间. 为了时间准确,选择用网络同步: #ntpd

sql server 2008 数据库管理系统使用SQL语句创建登录用户详细步骤

--服务器角色:--固定服务器角色具有一组固定的权限,并且适用于整个服务器范围. 它们专门用于管理 SQL Server,且不能更改分配给它们的权限. --可以在数据库中不存在用户帐户的情况下向固定服务器角色分配登录.--按照从最低级别的角色(bulkadmin)到最高级别的角色(sysadmin)的顺序进行描述:--1.Bulkadmin:这个服务器角色的成员可以运行BULKINSERT语句.这条语句允许从文本文件中将数据导入到SQLServer 2008数据库中,-- 为需要执行大容量插入到

Yii 2 —— 登录用户校验

1.1  登录用户校验 在登录页面,输入用户名密码后,Yii2是如何完成用户名和密码的校验的? 1.1.1  代码流程 根据Yii的规则,用户校验的入口是从Action开始的: SiteController->actionLogin() LoginForm->login() LoginForm->validate() LoginForm->validatePassword() User->validatePassword() 上面的代码流程把框架内的处理给隐藏起来了,从业务上