1. 函数原型:
  2. BOOL WTSEnumerateSessions( HANDLE hServer,
  3. DWORD Reserved,
  4. DWORD Version,
  5. PWTS_SESSION_INFO* ppSessionInfo,
  6. DWORD* pCount
  7. );
  8. 作用:对当前系统的session信息进行枚举。
  9. 参数说明:
  10. hServer:指定要对终端断服务枚举的句柄,本机可以的话可以为WTS_CURRENT_SERVER_HANDLE 或者NULL
  11. Reserved:系统保留位,必须为0
  12. Version:指定枚举请求的版本,必须为1
  13. ppSessionInfo:一个WTS_SESSION_INFO结构
  14. 可以看一下该结构的定义:
  15. typedef struct _WTS_SESSION_INFO
  16. {
  17. DWORD SessionId;
  18. LPTSTR pWinStationName;
  19. WTS_CONNECTSTATE_CLASS State;
  20. } WTS_SESSION_INFO, * PWTS_SESSION_INFO;
  21.  
  22. 该结构中包含绘画ID Windows空间站名,session的状态,此状态为枚举值。再次看下一结构
  23. typedef enum _WTS_CONNECTSTATE_CLASS
  24. {
  25. WTSActive, // User logged on to WinStation
  26. WTSConnected, // WinStation connected to client
  27. WTSConnectQuery, // In the process of connecting to client
  28. WTSShadow, // Shadowing another WinStation
  29. WTSDisconnected, // WinStation logged on without client
  30. WTSIdle, // Waiting for client to connect
  31. WTSListen, // WinStation is listening for connection
  32. WTSReset, // WinStation is being reset
  33. WTSDown, // WinStation is down due to error
  34. WTSInit, // WinStation in initialization
  35. } WTS_CONNECTSTATE_CLASS;
  36.  
  37. pCount:返回Session的数量,为输出参数
  38.  
  39. 举例说明:
  1. void main()
  2.  
  3. {
  4.  
  5. PWTS_SESSION_INFO psi;
  6. DWORD dwCount;
  7.  
  8. BOOL bRet = WTSEnumerateSessions(WTS_CURRENT_SERVER_HANDLE, 0, 1, &psi, &dwCount);
  9.  
  10. if (!bRet)
  11. return 0;
  12. wstring strName;
  13. for (unsigned int i = 0; i < dwCount; i ++)
  14. {
  15. printf("%s \t", psi[i].pWinStationName);
  16. printf("%d \t", psi[i].SessionId);
  17. printf("%d \n", psi[i].State);
  18. }
  19. WTSFreeMemory(psi);
  20.  
  21. }

Windowns API 第24篇 WTSEnumerateSessions 枚举session信息的更多相关文章

  1. WTSEnumerateSessions 枚举session信息

    http://dwbpriarie.lofter.com/post/1cd339fc_8cf728c https://www.cnblogs.com/priarieNew/p/9755655.html ...

  2. 我所理解的RESTful Web API [Web标准篇]

    REST不是一个标准,而是一种软件应用架构风格.基于SOAP的Web服务采用RPC架构,如果说RPC是一种面向操作的架构风格,而REST则是一种面向资源的架构风格.REST是目前业界更为推崇的构建新一 ...

  3. SimpleDateFormat 出现错误 Call requires API level 24 (current min is 15)

    这个故事是这样的 今天写打卡时间的时候需要获取一下当前时间,然后我就写了一个这个 SimpleDateFormat sDF =   new SimpleDateFormat("yyyy-MM ...

  4. shiro源码篇 - shiro的session共享,你值得拥有

    前言 开心一刻 老师对小明说:"乳就是小的意思,比如乳猪就是小猪,乳名就是小名,请你用乳字造个句" 小明:"我家很穷,只能住在40平米的乳房" 老师:" ...

  5. Android N(API level 24.)废弃了Html.fromHtml(String)

    从API level 24开始,fromHtml(String)被废弃,使用fromHtml(String source, int flags) 代替 flags: FROM_HTML_MODE_CO ...

  6. Mysql高手系列 - 第24篇:如何正确的使用索引?【高手进阶】

    Mysql系列的目标是:通过这个系列从入门到全面掌握一个高级开发所需要的全部技能. 欢迎大家加我微信itsoku一起交流java.算法.数据库相关技术. 这是Mysql系列第24篇. 学习索引,主要是 ...

  7. 第六篇 flask中session

    Flask中的Session非常的奇怪,他会将你的SessionID存放在客户端的Cookie中,使用起来也非常的奇怪 Flask 中 session 的使用 1. Flask 中 session 是 ...

  8. 与子域名共用session信息

    参考自 http://www.jb51.net/article/19664.htm 下面的步骤只使用于两个域名在同一个服务起得情况下,如果不在一个服务器上,就需要考虑通过数据库来存储session信息 ...

  9. Expo大作战(三十九)--expo sdk api之 DocumentPicker,Contacts(获取手机联系人信息),Branch

    简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...

随机推荐

  1. Python自学:第五章 列表解析

    # -*- coding: GBK -*- squares = [value**2 for value in range(1,11)] print(squares) 输出为: [1, 4, 9, 16 ...

  2. ctrl+shift+k取消

    因为typora软件和搜狗输入法软件的快捷键重合了,ctrl+shift+k在typora中是代码块的快捷键,而在搜狗输入法中是软键盘快捷键,显然软键盘不重要. 搜狗输入法的ctrl+shift+k取 ...

  3. 树莓派3b+ 实现视频监控

    设备:树莓派3B+.Raspberry Pi Camera sudo raspi-config #启动camera sudo reboot #监测摄像头是否安装成功 raspistill -o ima ...

  4. QT安装以及使用(QT支持linux和windows,也支持C/C++代码的编译运行,比vs简洁多)

    Windows: 0. QT Versionqt-win-opensource-4.7.4-mingwqt-creator-win-opensource-2.4.1 1. 系统Windows 7 &a ...

  5. go包flag系统包简单使用

    一.代码 package main import ( "flag" "fmt" ) //定义命令行参数,这个mode是内存地址,参数1是命令行名称,参数2是命令 ...

  6. [HEOI 2018]一双木棋

    题意:求对抗分数差值最大. 思路:状压dp,维护一条轮廓线,最大化分差.可以发现上一行的棋子个数永远比这一行多. #include<bits/stdc++.h> using namespa ...

  7. System.Web.Mvc.HttpPostAttribute.cs

    ylbtech-System.Web.Mvc.HttpPostAttribute.cs 1.程序集 System.Web.Mvc, Version=5.2.3.0, Culture=neutral, ...

  8. 51nod-1130-N的阶乘的长度V2(斯特林近似)-套斯特林公式

    输入N求N的阶乘的10进制表示的长度.例如6! = 720,长度为3. 输入 第1行:一个数T,表示后面用作输入测试的数的数量.(1 <= T <= 1000) 第2 - T + 1行:每 ...

  9. cordova开发笔记

    搜狐邮箱APP 使用了cordova框架,遇到了一些列问题,稍微总结记录下 扩展支持appInBrowser,用来以新窗口方式打开外链url 解决跨域问题(cordova默认当前域为localhost ...

  10. ElasticJob-分布式作业调度神器,你们还在用Quartz吗?!

    简介 Elastic-Job是一个分布式调度解决方案,由两个相互独立的子项目Elastic-Job-Lite和Elastic-Job-Cloud组成. Elastic-Job-Lite定位为轻量级无中 ...