/*++ Copyright (c) 1996 Microsoft Corporation Module Name: cenmfpre.hxx Abstract: Contains definitions for CFPNWResourcesCollection and for CFPNWResourcesEnumVar Author: Ram Viswanathan (ramv) 02-12-96 Revision History: --*/ class CFPNWResourcesEnumVar; class CFPNWResourcesCollection: INHERIT_TRACKING, public ISupportErrorInfo, public IADsCollection { public: /* IUnknown methods */ STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) ; DECLARE_STD_REFCOUNTING; DECLARE_IDispatch_METHODS; DECLARE_ISupportErrorInfo_METHODS; DECLARE_IADsCollection_METHODS; // // constructor and destructor // CFPNWResourcesCollection(); ~CFPNWResourcesCollection(); static HRESULT Create(LPTSTR pszServerADsPath, LPTSTR pszBasePath, CWinNTCredentials& Credentials, CFPNWResourcesCollection ** ppResourcesCollection ); protected: CAggregatorDispMgr * _pDispMgr; CFPNWResourcesEnumVar *_pCResourcesEnumVar; LPWSTR _pszServerADsPath; LPWSTR _pszServerName; LPWSTR _pszBasePath; LPWSTR _pszUserName; CWinNTCredentials _Credentials; }; class CFPNWResourcesEnumVar : public CWinNTEnumVariant { public: static HRESULT Create(LPTSTR pszServerADsPath, LPTSTR pszBasePath, CWinNTCredentials& Credentials, CFPNWResourcesEnumVar **pCResourcesEnumVar ); CFPNWResourcesEnumVar(); ~CFPNWResourcesEnumVar(); // // helper function // HRESULT GetObject(BSTR bstrSessionName, VARIANT *pvar); protected: LPWSTR _pszServerName; LPWSTR _pszServerADsPath; LPWSTR _pszBasePath; LPWSTR _pszUserName; LONG _lCurrentPosition; ULONG _cElements; LONG _lLBound; DWORD _dwResumeHandle; DWORD _dwTotalEntries; LPBYTE _pbResources; CWinNTCredentials _Credentials; STDMETHOD(Next)( ULONG cElements, VARIANT FAR* pvar, ULONG FAR* pcElementFetched ); }; // // Helper functions // HRESULT FPNWEnumResources(LPTSTR pszServerName, LPTSTR pszBasePath, LPBYTE * ppMem, LPDWORD pdwEntriesRead, LPDWORD pdwResumeHandle );