64 lines
1.5 KiB
C++
64 lines
1.5 KiB
C++
class FAR CWinNTUserGroupsCollectionEnum : public CWinNTEnumVariant
|
|
{
|
|
public:
|
|
CWinNTUserGroupsCollectionEnum();
|
|
~CWinNTUserGroupsCollectionEnum();
|
|
|
|
static
|
|
HRESULT
|
|
CWinNTUserGroupsCollectionEnum::Create(
|
|
CWinNTUserGroupsCollectionEnum FAR* FAR* ppenumvariant,
|
|
ULONG ParentType,
|
|
BSTR ParentADsPath,
|
|
BSTR DomainName,
|
|
BSTR ServerName,
|
|
BSTR UserName,
|
|
VARIANT vFilter,
|
|
CWinNTCredentials& Credentials
|
|
);
|
|
|
|
STDMETHOD(Reset)();
|
|
STDMETHOD(Skip)(ULONG cElements);
|
|
STDMETHOD(Next)(ULONG cElements,
|
|
VARIANT FAR* pvar,
|
|
ULONG FAR* pcElementFetched);
|
|
|
|
private:
|
|
CWinNTCredentials _Credentials;
|
|
ULONG _ParentType;
|
|
BSTR _ParentADsPath;
|
|
BSTR _DomainName;
|
|
BSTR _ServerName;
|
|
BSTR _UserName;
|
|
VARIANT _vFilter;
|
|
|
|
LPVOID _pGlobalBuffer;
|
|
LPVOID _pLocalBuffer;
|
|
DWORD _dwCurrent;
|
|
DWORD _dwTotal;
|
|
DWORD _dwGlobalTotal;
|
|
DWORD _dwLocalTotal;
|
|
BOOL _fIsDomainController;
|
|
|
|
HRESULT
|
|
CWinNTUserGroupsCollectionEnum::DoEnumeration();
|
|
|
|
HRESULT
|
|
CWinNTUserGroupsCollectionEnum::DoGlobalEnumeration();
|
|
|
|
HRESULT
|
|
CWinNTUserGroupsCollectionEnum::DoLocalEnumeration();
|
|
|
|
HRESULT
|
|
CWinNTUserGroupsCollectionEnum::EnumUserGroups(
|
|
ULONG cElements,
|
|
VARIANT FAR* pvar,
|
|
ULONG FAR* pcElementFetched
|
|
);
|
|
|
|
HRESULT
|
|
CWinNTUserGroupsCollectionEnum::GetNextUserGroup(
|
|
IDispatch ** ppDispatch
|
|
);
|
|
};
|