Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

95 lines
1.9 KiB

/*++
Copyright (c) 1994-95 Microsoft Corporation
Module Name:
usrobj.h
Abstract:
User object implementation.
Author:
Don Ryan (donryan) 04-Jan-1995
Environment:
User Mode - Win32
Revision History:
--*/
#ifndef _USROBJ_H_
#define _USROBJ_H_
class CUser : public CCmdTarget
{
DECLARE_DYNCREATE(CUser)
private:
CCmdTarget* m_pParent;
CObArray m_statisticArray;
BOOL m_bStatisticsRefreshed;
public:
CString m_strName;
CString m_strMapping;
CString m_strProducts; // blah...
BOOL m_bIsMapped;
BOOL m_bIsBackOffice; // blah...
BOOL m_bIsValid;
long m_lInUse;
long m_lUnlicensed;
CStatistics* m_pStatistics;
public:
CUser(
CCmdTarget* pParent = NULL,
LPCTSTR pName = NULL,
DWORD dwFlags = 0L,
long lInUse = 0L,
long lUnlicensed = 0L,
LPCTSTR pMapping = NULL,
LPCTSTR pProducts = NULL
);
virtual ~CUser();
BOOL Refresh();
BOOL RefreshStatistics();
void ResetStatistics();
BSTR GetFullName();
//{{AFX_VIRTUAL(CUser)
public:
virtual void OnFinalRelease();
//}}AFX_VIRTUAL
//{{AFX_DISPATCH(CUser)
afx_msg LPDISPATCH GetApplication();
afx_msg long GetInUse();
afx_msg BSTR GetName();
afx_msg LPDISPATCH GetParent();
afx_msg BSTR GetMapping();
afx_msg BOOL IsMapped();
afx_msg long GetUnlicensed();
afx_msg LPDISPATCH GetStatistics(const VARIANT FAR& index);
//}}AFX_DISPATCH
DECLARE_DISPATCH_MAP()
protected:
//{{AFX_MSG(CUser)
// NOTE - the ClassWizard will add and remove member functions here.
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
#define IsUserInViolation(usr) (!(usr)->m_bIsValid)
#define CalcUserBitmap(usr) (IsUserInViolation(usr) ? BMPI_VIOLATION : BMPI_USER)
#endif // _USROBJ_H_