函数原型
NET_API_STATUS NET_API_FUNCTION NetSessionEnum(
LMSTR servername,
LMSTR UncClientName,
LMSTR username,
DWORD level,
LPBYTE *bufptr,
DWORD prefmaxlen,
LPDWORD entriesread,
LPDWORD totalentries,
LPDWORD resume_handle
);
servername
目标地址,如果为NULL则为本地计算机
UncClientName
指定要为其返回信息的计算机会话名称,如果为NULL则返回所有会话信息
username
返回用户名称,如果为NULL则返回所有用户信息
level
用10即可,返回计算机的名称,用户的名称以及会话的活动时间和空闲时间
bufptr
参照level的值,此处用SESSION_INFO_10结构
prefmaxlen
返回数据的首选最大长度,可用MAX_PREFERRED_LENGTH使得函数来分配内存量
entriesread
结合实际枚举的元素数
totalentries
接收可能从当前建立位置枚举的条目总数
resume_handle
指向包含恢复句柄的值的指针,该恢复句柄用于继续现有的会话搜索。第一次调用时,该句柄应为零,而对于后续调用,则应保持不变。如果resume_handle为NULL,则不存储任何恢复句柄
函数成功返回NERR_Success
SESSION_INFO_10结构
typedef struct _SESSION_INFO_10 {
LMSTR sesi10_cname;//指向Unicode字符串的指针,该字符串指定建立会话的计算机的名称。该字符串不能包含反斜杠(\)
LMSTR sesi10_username;//指向Unicode字符串的指针,该字符串指定建立会话的用户的名称
DWORD sesi10_time;//会话处于活动状态的秒数
DWORD sesi10_idle_time;//会话空闲的秒数
} SESSION_INFO_10, *PSESSION_INFO_10, *LPSESSION_INFO_10;
实现效果
{{uploading-image-576182.png(uploading...)}}
联系邮箱:yang_s1r@163.com
博客园地址:https://www.cnblogs.com/Yang34/