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.
 
 
 
 
 
 

236 lines
5.0 KiB

#define COMPUTER_USER 1
#define DOMAIN_USER 2
class CNWCOMPATUser;
class CNWCOMPATUser : INHERIT_TRACKING,
public CCoreADsObject,
public ISupportErrorInfo,
public IADsUser,
public IADsPropertyList
{
public:
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) ;
DECLARE_STD_REFCOUNTING
DECLARE_IDispatch_METHODS
NW_DECLARE_ISupportErrorInfo_METHODS
DECLARE_IADs_METHODS
DECLARE_IADsUser_METHODS
DECLARE_IADsPropertyList_METHODS
CNWCOMPATUser::CNWCOMPATUser();
CNWCOMPATUser::~CNWCOMPATUser();
static
HRESULT
CNWCOMPATUser::CreateUser(
BSTR Parent,
ULONG ParentType,
BSTR ServerName,
BSTR UserName,
CCredentials &Credentials,
DWORD dwObjectState,
REFIID riid,
void **ppvObj
);
static
HRESULT
CNWCOMPATUser::AllocateUserObject(
CNWCOMPATUser ** ppUser
);
STDMETHOD(GetInfo)(
THIS_ BOOL fExplicit,
DWORD dwPropertyID
) ;
STDMETHODIMP
CNWCOMPATUser::SetInfo(
THIS_ DWORD dwPropertyID
);
protected:
HRESULT
CNWCOMPATUser::SetBusinessInfo(
NWCONN_HANDLE hConn
);
HRESULT
CNWCOMPATUser::SetAccountRestrictions(
NWCONN_HANDLE hConn
);
HRESULT
CNWCOMPATUser::ExplicitGetInfo(
NWCONN_HANDLE hConn,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::ImplicitGetInfo(
NWCONN_HANDLE hConn,
DWORD dwPropertyID,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetBusinessInfo(
NWCONN_HANDLE hConn,
DWORD dwPropertyID,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetAccountRestrictions(
NWCONN_HANDLE hConn,
DWORD dwPropertyID,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetAccountStatistics(
NWCONN_HANDLE hConn,
DWORD dwPropertyID,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetProperty_FullName(
NWCONN_HANDLE hConn,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetProperty_AccountDisabled(
NWCONN_HANDLE hConn,
LC_STRUCTURE LoginCtrlStruct,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetProperty_AccountExpirationDate(
NWCONN_HANDLE hConn,
LC_STRUCTURE LoginCtrlStruct,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetProperty_CanAccountExpire(
NWCONN_HANDLE hConn,
LC_STRUCTURE LoginCtrlStruct,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetProperty_GraceLoginsAllowed(
NWCONN_HANDLE hConn,
LC_STRUCTURE LoginCtrlStruct,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetProperty_GraceLoginsRemaining(
NWCONN_HANDLE hConn,
LC_STRUCTURE LoginCtrlStruct,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetProperty_IsAccountLocked(
NWCONN_HANDLE hConn,
LC_STRUCTURE LoginCtrlStruct,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetProperty_LoginHours(
NWCONN_HANDLE hConn,
LC_STRUCTURE LoginCtrlStruct,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetProperty_IsAdmin(
NWCONN_HANDLE hConn,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetProperty_MaxLogins(
NWCONN_HANDLE hConn,
LC_STRUCTURE LoginCtrlStruct,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetProperty_CanPasswordExpire(
NWCONN_HANDLE hConn,
LC_STRUCTURE LoginCtrlStruct,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetProperty_PasswordExpirationDate(
NWCONN_HANDLE hConn,
LC_STRUCTURE LoginCtrlStruct,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetProperty_PasswordMinimumLength(
NWCONN_HANDLE hConn,
LC_STRUCTURE LoginCtrlStruct,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetProperty_PasswordRequired(
NWCONN_HANDLE hConn,
LC_STRUCTURE LoginCtrlStruct,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetProperty_RequireUniquePassword(
NWCONN_HANDLE hConn,
LC_STRUCTURE LoginCtrlStruct,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetProperty_BadLoginAddress(
NWCONN_HANDLE hConn,
LC_STRUCTURE LoginCtrlStruct,
BOOL fExplicit
);
HRESULT
CNWCOMPATUser::GetProperty_LastLogin(
NWCONN_HANDLE hConn,
LC_STRUCTURE LoginCtrlStruct,
BOOL fExplicit
);
BSTR _ServerName;
BSTR _szHostServerName;
ULONG _ParentType;
CDispatchMgr FAR * _pDispMgr;
CPropertyCache FAR * _pPropertyCache;
CCredentials _Credentials;
NWCONN_HANDLE _hConn;
};