home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / msdn_vcb / samples / vc98 / sdk / netds / adsi / sampprov / cgenobj.h < prev    next >
Encoding:
C/C++ Source or Header  |  1997-07-29  |  1.7 KB  |  100 lines

  1. /*++
  2.  
  3. Copyright (c) 1996 Microsoft Corporation
  4.  
  5. Module Name:
  6.  
  7.     CGenObj.h
  8.  
  9. Abstract:
  10.  
  11. Author:
  12.  
  13. Environment:
  14.  
  15.     User mode
  16.  
  17. Revision History :
  18.  
  19. --*/
  20. #ifndef _CGENOBJ_H_
  21. #define _CGENOBJ_H_
  22.  
  23. class CSampleDSGenObject;
  24.  
  25.  
  26. class CSampleDSGenObject : INHERIT_TRACKING,
  27.                      public CCoreADsObject,
  28.                      public IADs,
  29.                      public IADsContainer
  30. {
  31. public:
  32.  
  33.     /* IUnknown methods */
  34.     STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) ;
  35.  
  36.     DECLARE_STD_REFCOUNTING
  37.  
  38.     DECLARE_IDispatch_METHODS
  39.  
  40.     DECLARE_IADs_METHODS
  41.  
  42.     DECLARE_IADsContainer_METHODS
  43.  
  44.     CSampleDSGenObject::CSampleDSGenObject();
  45.  
  46.     CSampleDSGenObject::~CSampleDSGenObject();
  47.  
  48.     static
  49.     HRESULT
  50.     CSampleDSGenObject::CreateGenericObject(
  51.         BSTR bstrADsPath,
  52.         DWORD dwObjectState,
  53.         REFIID riid,
  54.         void **ppvObj
  55.         );
  56.  
  57.     static
  58.     HRESULT
  59.     CSampleDSGenObject::CreateGenericObject(
  60.         BSTR Parent,
  61.         BSTR CommonName,
  62.         BSTR ClassName,
  63.         DWORD dwObjectState,
  64.         REFIID riid,
  65.         void **ppvObj
  66.         );
  67.  
  68.     static
  69.     HRESULT
  70.     CSampleDSGenObject::AllocateGenObject(
  71.         CSampleDSGenObject ** ppGenObject
  72.         );
  73.  
  74.     STDMETHOD(GetInfo)(
  75.         BOOL fExplicit
  76.         );
  77.  
  78.  
  79.     HRESULT
  80.     CSampleDSGenObject::SampleDSSetObject();
  81.     
  82.     HRESULT
  83.     CSampleDSGenObject::SampleDSCreateObject();
  84.     
  85.     protected:
  86.     
  87.         VARIANT     _vFilter;
  88.         CPropertyCache FAR * _pPropertyCache;
  89.         CDispatchMgr FAR * _pDispMgr;
  90. };
  91.  
  92. HRESULT
  93. ConvertSafeArrayToVariantArray(
  94.     VARIANT varSafeArray,
  95.     VARIANT ** ppVarArray,
  96.     PDWORD pdwNumVariants
  97.     );
  98. #endif
  99.  
  100.