Leaked source code of windows server 2003
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.

100 lines
2.2 KiB

  1. class CNDSClass;
  2. class CNDSClass : INHERIT_TRACKING,
  3. public CCoreADsObject,
  4. public ISupportErrorInfo,
  5. public IADsClass
  6. {
  7. public:
  8. /* IUnknown methods */
  9. STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) ;
  10. DECLARE_STD_REFCOUNTING
  11. DECLARE_IDispatch_METHODS
  12. DECLARE_ISupportErrorInfo_METHODS
  13. DECLARE_IADs_METHODS
  14. DECLARE_IADsClass_METHODS
  15. CNDSClass::CNDSClass();
  16. CNDSClass::~CNDSClass();
  17. static
  18. HRESULT
  19. CNDSClass::CreateClass(
  20. BSTR Parent,
  21. BSTR CommonName,
  22. LPNDS_CLASS_DEF lpClassDefs,
  23. CCredentials& Credentials,
  24. DWORD dwObjectState,
  25. REFIID riid,
  26. void **ppvObj
  27. );
  28. static
  29. HRESULT
  30. CNDSClass::CreateClass(
  31. BSTR Parent,
  32. BSTR CommonName,
  33. HANDLE hTree,
  34. CCredentials& Credentials,
  35. DWORD dwObjectState,
  36. REFIID riid,
  37. void **ppvObj
  38. );
  39. static
  40. HRESULT
  41. CNDSClass::AllocateClassObject(
  42. CCredentials& Credentials,
  43. CNDSClass ** ppClass
  44. );
  45. STDMETHOD(GetInfo)(
  46. THIS_ DWORD dwApiLevel,
  47. BOOL fExplicit
  48. );
  49. protected:
  50. VARIANT _vFilter;
  51. BSTR _bstrCLSID;
  52. BSTR _bstrOID;
  53. BSTR _bstrPrimaryInterface;
  54. BSTR _bstrHelpFileName;
  55. LONG _lHelpFileContext;
  56. DWORD _dwFlags;
  57. LPWSTR _lpClassName;
  58. DWORD _dwNumberOfSuperClasses;
  59. PPROPENTRY _lpSuperClasses;
  60. DWORD _dwNumberOfContainmentClasses;
  61. PPROPENTRY _lpContainmentClasses;
  62. DWORD _dwNumberOfNamingAttributes;
  63. PPROPENTRY _lpNamingAttributes;
  64. DWORD _dwNumberOfMandatoryAttributes;
  65. PPROPENTRY _lpMandatoryAttributes;
  66. DWORD _dwNumberOfOptionalAttributes;
  67. PPROPENTRY _lpOptionalAttributes;
  68. CCredentials _Credentials;
  69. CDispatchMgr FAR * _pDispMgr;
  70. };
  71. HRESULT
  72. MakeVariantFromPropList(
  73. PPROPENTRY pPropList,
  74. DWORD dwNumEntries,
  75. VARIANT * pVarList
  76. );
  77. PPROPENTRY
  78. CreatePropertyList(
  79. LPWSTR_LIST lpStringList
  80. );