objactnl.idl 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. //-----------------------------------------------------------------------------
  2. // File: objactnl.idl
  3. //
  4. // Copyright: Copyright (c) Microsoft Corporation
  5. //
  6. // Contents: OLE DB interface definition
  7. //
  8. // Comments:
  9. //
  10. //-----------------------------------------------------------------------------
  11. #include "idlmulti.h"
  12. //
  13. #if( OLEDBVER >= 0x0200 )
  14. REMOTED_INTERFACE(0c733aa3-2a1c-11ce-ade5-00aa0044773d)
  15. #else
  16. LOCAL_INTERFACE(0c733aa3-2a1c-11ce-ade5-00aa0044773d)
  17. #endif
  18. interface IObjectAccessControl : IUnknown {
  19. HRESULT GetObjectAccessRights(
  20. [in] SEC_OBJECT* pObject,
  21. [in, out] ULONG* pcAccessEntries,
  22. [in, out] EXPLICIT_ACCESS_W** prgAccessEntries
  23. );
  24. HRESULT GetObjectOwner (
  25. [in] SEC_OBJECT* pObject,
  26. [out] TRUSTEE_W** ppOwner
  27. );
  28. HRESULT IsObjectAccessAllowed(
  29. [in] SEC_OBJECT* pObject,
  30. [in] EXPLICIT_ACCESS_W* pAccessEntry,
  31. [out] BOOL* pfResult
  32. );
  33. HRESULT SetObjectAccessRights(
  34. [in] SEC_OBJECT* pObject,
  35. [in] ULONG cAccessEntries,
  36. [in, out] EXPLICIT_ACCESS_W* prgAccessEntries
  37. );
  38. HRESULT SetObjectOwner(
  39. [in] SEC_OBJECT* pObject,
  40. [in] TRUSTEE_W* pOwner
  41. );
  42. }