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.

97 lines
2.0 KiB

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