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.

116 lines
2.5 KiB

  1. //---------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1995
  5. //
  6. // File: cfserv.hxx
  7. //
  8. // Contents:
  9. //
  10. // History: April 19, 1996 t-ptam (Patrick Tam) Created.
  11. //
  12. //----------------------------------------------------------------------------
  13. class CPropertyCache;
  14. class CNWCOMPATFileService: INHERIT_TRACKING,
  15. public CCoreADsObject,
  16. public ISupportErrorInfo,
  17. public IADsFileService,
  18. public IADsFileServiceOperations,
  19. public IADsContainer,
  20. public IADsPropertyList
  21. {
  22. public:
  23. /* IUnknown methods */
  24. STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj);
  25. DECLARE_STD_REFCOUNTING;
  26. DECLARE_IADs_METHODS;
  27. DECLARE_IDispatch_METHODS;
  28. NW_DECLARE_ISupportErrorInfo_METHODS;
  29. DECLARE_IADsContainer_METHODS;
  30. DECLARE_IADsService_METHODS;
  31. DECLARE_IADsServiceOperations_METHODS;
  32. DECLARE_IADsFileService_METHODS;
  33. DECLARE_IADsFileServiceOperations_METHODS;
  34. DECLARE_IADsPropertyList_METHODS;
  35. //
  36. // constructor and destructor
  37. //
  38. CNWCOMPATFileService();
  39. ~CNWCOMPATFileService();
  40. static
  41. HRESULT
  42. CreateFileService(
  43. LPTSTR pszADsParent,
  44. LPTSTR pszServerName,
  45. LPTSTR pszFileServiceName,
  46. CCredentials &Credentials,
  47. DWORD dwObjectState,
  48. REFIID riid,
  49. void **ppvObj
  50. );
  51. static
  52. HRESULT
  53. CNWCOMPATFileService::AllocateFileServiceObject(
  54. CNWCOMPATFileService ** ppFileService
  55. );
  56. protected:
  57. STDMETHOD(GetInfo)(
  58. THIS_ BOOL fExplicit,
  59. DWORD dwPropertyID
  60. );
  61. HRESULT
  62. CNWCOMPATFileService::ExplicitGetInfo(
  63. NWCONN_HANDLE hConn,
  64. POBJECTINFO pObjectInfo,
  65. BOOL fExplicit
  66. );
  67. HRESULT
  68. CNWCOMPATFileService::ImplicitGetInfo(
  69. NWCONN_HANDLE hConn,
  70. POBJECTINFO pObjectInfo,
  71. DWORD dwPropertyID,
  72. BOOL fExplicit
  73. );
  74. HRESULT
  75. CNWCOMPATFileService::GetProperty_MaxUserCount(
  76. NWCONN_HANDLE hConn,
  77. BOOL fExplicit
  78. );
  79. HRESULT
  80. CNWCOMPATFileService::GetProperty_HostComputer(
  81. POBJECTINFO pObjectInfo,
  82. BOOL fExplicit
  83. );
  84. BSTR _ServerName;
  85. CDispatchMgr * _pDispMgr;
  86. CPropertyCache *_pPropertyCache;
  87. CCredentials _Credentials;
  88. NWCONN_HANDLE _hConn;
  89. };