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.
|
|
/*++
Copyright (c) 1995 Microsoft Corporation
Module Name:
cfshare.hxx
Abstract: Contains definitions for
CWinNTFSFileShareGeneralInfo, CWinNTFSFileShareBindingInfo and CWinNTFileShare
Author:
Ram Viswanathan (ramv) 02/15/96
Revision History:
--*/
class CWinNTFSFileShareGeneralInfo; class CPropertyCache;
class CWinNTFileShare: INHERIT_TRACKING, public ISupportErrorInfo, public IADsFileShare, public IADsPropertyList, public CCoreADsObject, public INonDelegatingUnknown, public IADsExtension {
friend class CWinNTFSFileShareGeneralInfo;
public: /* IUnknown methods */ STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) ;
STDMETHODIMP_(ULONG) AddRef(void);
STDMETHODIMP_(ULONG) Release(void);
// INonDelegatingUnknown methods
STDMETHOD(NonDelegatingQueryInterface)(THIS_ const IID&, void ** );
DECLARE_NON_DELEGATING_REFCOUNTING
DECLARE_IDispatch_METHODS;
DECLARE_ISupportErrorInfo_METHODS;
DECLARE_IADs_METHODS;
DECLARE_IADsFileShare_METHODS;
DECLARE_IADsPropertyList_METHODS;
DECLARE_IADsExtension_METHODS;
//
// constructor and destructor
//
CWinNTFileShare::CWinNTFileShare();
CWinNTFileShare::~CWinNTFileShare();
static HRESULT Create(LPTSTR pszADsParent, LPTSTR pszServerName, LPTSTR pszServiceName, LPTSTR pszShareName, DWORD dwObject, REFIID riid, CWinNTCredentials& Credentials, LPVOID * ppvoid );
static HRESULT AllocateFileShareObject(LPTSTR pszADsParent, LPTSTR pszServerName, LPTSTR pszServiceName, LPTSTR pszShareName, CWinNTFileShare ** ppFileShare );
HRESULT MarshallAndSet(LPSHARE_INFO_2 lpShareInfo2); STDMETHOD(GetInfo)(THIS_ DWORD dwApiLevel, BOOL fExplicit);
STDMETHOD(ImplicitGetInfo)(void);
protected:
//
// helper functions
//
HRESULT GetLevel2Info(THIS_ BOOL fExplicit);
HRESULT GetLevel1Info(THIS_ BOOL fExplicit);
HRESULT WinNTAddFileShare(void);
CWinNTFSFileShareGeneralInfo *_pGenInfo; CAggregatorDispMgr * _pDispMgr; CADsExtMgr FAR * _pExtMgr; LPWSTR _pszShareName; LPWSTR _pszServerName; CPropertyCache * _pPropertyCache; CWinNTCredentials _Credentials; };
//
// helper function to delete a file share given the ObjectInfo structure
//
HRESULT WinNTDeleteFileShare(POBJECTINFO pObjectInfo);
|