/*
* SessionInfo2.h
* Copyright (c) 2011 Antillia.com TOSHIYUKI ARAI. ALL RIGHTS RESERVED.
*/
#pragma once
#include <sol/nm/SessionInfo.h>
namespace SOL {
class SessionInfo2 :public SessionInfo {
public:
SessionInfo2()
:SessionInfo(2)
{
}
public:
/*
typedef struct _SESSION_INFO_2 {
LPWSTR sesi2_cname;
LPWSTR sesi2_username;
DWORD sesi2_num_opens;
DWORD sesi2_time;
DWORD sesi2_idle_time;
DWORD sesi2_user_flags;
LPWSTR sesi2_cltype_name;
} SESSION_INFO_2, *PSESSION_INFO_2, *LPSESSION_INFO_2;
sesi1_user_flags:Specifies a DWORD value that describes how the user established the session.
SESS_GUEST //The user specified by the sesi2_username member established the session using a guest account.
SESS_NOENCRYPTION //The user specified by the sesi2_username member established the session without using
password encryption.
sesi2_cltype_name: Pointer to a Unicode string that specifies the type of client that established the session.
DOS LM 1.0 // LAN Manager for MS-DOS 1.0 clients
DOS LM 2.0 // LAN Manager for MS-DOS 2.0 clients
OS/2 LM 1.0 // LAN Manager for MS-OS/2 1.0 clients
OS/2 LM 2.0 //LAN Manager for MS-OS/2 2.0 clients
*/
SESSION_INFO_2* getInfo()
{
return (SESSION_INFO_2*)getBuffer();
}
public:
void display()
{
SESSION_INFO_2* ptr = getInfo();
int count = getEntriesRead();
printf("SESSION_INFO_2 count=%d\n", count);
for (int i = 0; i<count; i++) {
if (ptr) {
printf("ComputerName: %S\n", ptr->sesi2_cname);
printf("UserName: %S\n", ptr->sesi2_username);
printf("NumOpens: %d\n", ptr->sesi2_num_opens);
printf("Time: %d\n", ptr->sesi2_time);
printf("IdleTime: %d\n", ptr->sesi2_idle_time);
printf("UserFlags: %d\n", ptr->sesi2_user_flags);
printf("ClientType: %S\n", ptr->sesi2_cltype_name);
printf("\n");
}
ptr++;
}
}
};
}
|