IAccess.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:15k
源码类别:

模拟服务器

开发平台:

C/C++

  1. #pragma warning( disable: 4049 )  /* more than 64k source lines */
  2. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  3.  /* File created by MIDL compiler version 6.00.0347 */
  4. /* Compiler settings for iaccess.idl:
  5.     Oicf, W1, Zp8, env=Win32 (32b run)
  6.     protocol : dce , ms_ext, c_ext, robust
  7.     error checks: allocation ref bounds_check enum stub_data 
  8.     VC __declspec() decoration level: 
  9.          __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  10.          DECLSPEC_UUID(), MIDL_INTERFACE()
  11. */
  12. //@@MIDL_FILE_HEADING(  )
  13. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  14. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  15. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  16. #endif
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef __RPCNDR_H_VERSION__
  20. #error this stub requires an updated version of <rpcndr.h>
  21. #endif // __RPCNDR_H_VERSION__
  22. #ifndef COM_NO_WINDOWS_H
  23. #include "windows.h"
  24. #include "ole2.h"
  25. #endif /*COM_NO_WINDOWS_H*/
  26. #ifndef __iaccess_h__
  27. #define __iaccess_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */ 
  32. #ifndef __IAccessControl_FWD_DEFINED__
  33. #define __IAccessControl_FWD_DEFINED__
  34. typedef interface IAccessControl IAccessControl;
  35. #endif  /* __IAccessControl_FWD_DEFINED__ */
  36. #ifndef __IAuditControl_FWD_DEFINED__
  37. #define __IAuditControl_FWD_DEFINED__
  38. typedef interface IAuditControl IAuditControl;
  39. #endif  /* __IAuditControl_FWD_DEFINED__ */
  40. /* header files for imported files */
  41. #include "unknwn.h"
  42. #include "accctrl.h"
  43. #ifdef __cplusplus
  44. extern "C"{
  45. #endif 
  46. void * __RPC_USER MIDL_user_allocate(size_t);
  47. void __RPC_USER MIDL_user_free( void * ); 
  48. /* interface __MIDL_itf_iaccess_0000 */
  49. /* [local] */ 
  50. //+-------------------------------------------------------------------------
  51. //
  52. //  Microsoft Windows
  53. //  Copyright (c) Microsoft Corporation. All rights reserved.
  54. //
  55. //--------------------------------------------------------------------------
  56. #if ( _MSC_VER >= 1020 )
  57. #pragma once
  58. #endif
  59. typedef /* [allocate] */ PACTRL_ACCESSW PACTRL_ACCESSW_ALLOCATE_ALL_NODES;
  60. typedef /* [allocate] */ PACTRL_AUDITW PACTRL_AUDITW_ALLOCATE_ALL_NODES;
  61. extern RPC_IF_HANDLE __MIDL_itf_iaccess_0000_v0_0_c_ifspec;
  62. extern RPC_IF_HANDLE __MIDL_itf_iaccess_0000_v0_0_s_ifspec;
  63. #ifndef __IAccessControl_INTERFACE_DEFINED__
  64. #define __IAccessControl_INTERFACE_DEFINED__
  65. /* interface IAccessControl */
  66. /* [unique][uuid][object] */ 
  67. EXTERN_C const IID IID_IAccessControl;
  68. #if defined(__cplusplus) && !defined(CINTERFACE)
  69.     
  70.     MIDL_INTERFACE("EEDD23E0-8410-11CE-A1C3-08002B2B8D8F")
  71.     IAccessControl : public IUnknown
  72.     {
  73.     public:
  74.         virtual HRESULT STDMETHODCALLTYPE GrantAccessRights( 
  75.             /* [in] */ PACTRL_ACCESSW pAccessList) = 0;
  76.         
  77.         virtual HRESULT STDMETHODCALLTYPE SetAccessRights( 
  78.             /* [in] */ PACTRL_ACCESSW pAccessList) = 0;
  79.         
  80.         virtual HRESULT STDMETHODCALLTYPE SetOwner( 
  81.             /* [in] */ PTRUSTEEW pOwner,
  82.             /* [in] */ PTRUSTEEW pGroup) = 0;
  83.         
  84.         virtual HRESULT STDMETHODCALLTYPE RevokeAccessRights( 
  85.             /* [in] */ LPWSTR lpProperty,
  86.             /* [in] */ ULONG cTrustees,
  87.             /* [size_is][in] */ TRUSTEEW prgTrustees[  ]) = 0;
  88.         
  89.         virtual HRESULT STDMETHODCALLTYPE GetAllAccessRights( 
  90.             /* [in] */ LPWSTR lpProperty,
  91.             /* [out] */ PACTRL_ACCESSW_ALLOCATE_ALL_NODES *ppAccessList,
  92.             /* [out] */ PTRUSTEEW *ppOwner,
  93.             /* [out] */ PTRUSTEEW *ppGroup) = 0;
  94.         
  95.         virtual HRESULT STDMETHODCALLTYPE IsAccessAllowed( 
  96.             /* [in] */ PTRUSTEEW pTrustee,
  97.             /* [in] */ LPWSTR lpProperty,
  98.             /* [in] */ ACCESS_RIGHTS AccessRights,
  99.             /* [out] */ BOOL *pfAccessAllowed) = 0;
  100.         
  101.     };
  102.     
  103. #else  /* C style interface */
  104.     typedef struct IAccessControlVtbl
  105.     {
  106.         BEGIN_INTERFACE
  107.         
  108.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  109.             IAccessControl * This,
  110.             /* [in] */ REFIID riid,
  111.             /* [iid_is][out] */ void **ppvObject);
  112.         
  113.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  114.             IAccessControl * This);
  115.         
  116.         ULONG ( STDMETHODCALLTYPE *Release )( 
  117.             IAccessControl * This);
  118.         
  119.         HRESULT ( STDMETHODCALLTYPE *GrantAccessRights )( 
  120.             IAccessControl * This,
  121.             /* [in] */ PACTRL_ACCESSW pAccessList);
  122.         
  123.         HRESULT ( STDMETHODCALLTYPE *SetAccessRights )( 
  124.             IAccessControl * This,
  125.             /* [in] */ PACTRL_ACCESSW pAccessList);
  126.         
  127.         HRESULT ( STDMETHODCALLTYPE *SetOwner )( 
  128.             IAccessControl * This,
  129.             /* [in] */ PTRUSTEEW pOwner,
  130.             /* [in] */ PTRUSTEEW pGroup);
  131.         
  132.         HRESULT ( STDMETHODCALLTYPE *RevokeAccessRights )( 
  133.             IAccessControl * This,
  134.             /* [in] */ LPWSTR lpProperty,
  135.             /* [in] */ ULONG cTrustees,
  136.             /* [size_is][in] */ TRUSTEEW prgTrustees[  ]);
  137.         
  138.         HRESULT ( STDMETHODCALLTYPE *GetAllAccessRights )( 
  139.             IAccessControl * This,
  140.             /* [in] */ LPWSTR lpProperty,
  141.             /* [out] */ PACTRL_ACCESSW_ALLOCATE_ALL_NODES *ppAccessList,
  142.             /* [out] */ PTRUSTEEW *ppOwner,
  143.             /* [out] */ PTRUSTEEW *ppGroup);
  144.         
  145.         HRESULT ( STDMETHODCALLTYPE *IsAccessAllowed )( 
  146.             IAccessControl * This,
  147.             /* [in] */ PTRUSTEEW pTrustee,
  148.             /* [in] */ LPWSTR lpProperty,
  149.             /* [in] */ ACCESS_RIGHTS AccessRights,
  150.             /* [out] */ BOOL *pfAccessAllowed);
  151.         
  152.         END_INTERFACE
  153.     } IAccessControlVtbl;
  154.     interface IAccessControl
  155.     {
  156.         CONST_VTBL struct IAccessControlVtbl *lpVtbl;
  157.     };
  158.     
  159. #ifdef COBJMACROS
  160. #define IAccessControl_QueryInterface(This,riid,ppvObject)
  161.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  162. #define IAccessControl_AddRef(This)
  163.     (This)->lpVtbl -> AddRef(This)
  164. #define IAccessControl_Release(This)
  165.     (This)->lpVtbl -> Release(This)
  166. #define IAccessControl_GrantAccessRights(This,pAccessList)
  167.     (This)->lpVtbl -> GrantAccessRights(This,pAccessList)
  168. #define IAccessControl_SetAccessRights(This,pAccessList)
  169.     (This)->lpVtbl -> SetAccessRights(This,pAccessList)
  170. #define IAccessControl_SetOwner(This,pOwner,pGroup)
  171.     (This)->lpVtbl -> SetOwner(This,pOwner,pGroup)
  172. #define IAccessControl_RevokeAccessRights(This,lpProperty,cTrustees,prgTrustees)
  173.     (This)->lpVtbl -> RevokeAccessRights(This,lpProperty,cTrustees,prgTrustees)
  174. #define IAccessControl_GetAllAccessRights(This,lpProperty,ppAccessList,ppOwner,ppGroup)
  175.     (This)->lpVtbl -> GetAllAccessRights(This,lpProperty,ppAccessList,ppOwner,ppGroup)
  176. #define IAccessControl_IsAccessAllowed(This,pTrustee,lpProperty,AccessRights,pfAccessAllowed)
  177.     (This)->lpVtbl -> IsAccessAllowed(This,pTrustee,lpProperty,AccessRights,pfAccessAllowed)
  178. #endif /* COBJMACROS */
  179. #endif  /* C style interface */
  180. HRESULT STDMETHODCALLTYPE IAccessControl_GrantAccessRights_Proxy( 
  181.     IAccessControl * This,
  182.     /* [in] */ PACTRL_ACCESSW pAccessList);
  183. void __RPC_STUB IAccessControl_GrantAccessRights_Stub(
  184.     IRpcStubBuffer *This,
  185.     IRpcChannelBuffer *_pRpcChannelBuffer,
  186.     PRPC_MESSAGE _pRpcMessage,
  187.     DWORD *_pdwStubPhase);
  188. HRESULT STDMETHODCALLTYPE IAccessControl_SetAccessRights_Proxy( 
  189.     IAccessControl * This,
  190.     /* [in] */ PACTRL_ACCESSW pAccessList);
  191. void __RPC_STUB IAccessControl_SetAccessRights_Stub(
  192.     IRpcStubBuffer *This,
  193.     IRpcChannelBuffer *_pRpcChannelBuffer,
  194.     PRPC_MESSAGE _pRpcMessage,
  195.     DWORD *_pdwStubPhase);
  196. HRESULT STDMETHODCALLTYPE IAccessControl_SetOwner_Proxy( 
  197.     IAccessControl * This,
  198.     /* [in] */ PTRUSTEEW pOwner,
  199.     /* [in] */ PTRUSTEEW pGroup);
  200. void __RPC_STUB IAccessControl_SetOwner_Stub(
  201.     IRpcStubBuffer *This,
  202.     IRpcChannelBuffer *_pRpcChannelBuffer,
  203.     PRPC_MESSAGE _pRpcMessage,
  204.     DWORD *_pdwStubPhase);
  205. HRESULT STDMETHODCALLTYPE IAccessControl_RevokeAccessRights_Proxy( 
  206.     IAccessControl * This,
  207.     /* [in] */ LPWSTR lpProperty,
  208.     /* [in] */ ULONG cTrustees,
  209.     /* [size_is][in] */ TRUSTEEW prgTrustees[  ]);
  210. void __RPC_STUB IAccessControl_RevokeAccessRights_Stub(
  211.     IRpcStubBuffer *This,
  212.     IRpcChannelBuffer *_pRpcChannelBuffer,
  213.     PRPC_MESSAGE _pRpcMessage,
  214.     DWORD *_pdwStubPhase);
  215. HRESULT STDMETHODCALLTYPE IAccessControl_GetAllAccessRights_Proxy( 
  216.     IAccessControl * This,
  217.     /* [in] */ LPWSTR lpProperty,
  218.     /* [out] */ PACTRL_ACCESSW_ALLOCATE_ALL_NODES *ppAccessList,
  219.     /* [out] */ PTRUSTEEW *ppOwner,
  220.     /* [out] */ PTRUSTEEW *ppGroup);
  221. void __RPC_STUB IAccessControl_GetAllAccessRights_Stub(
  222.     IRpcStubBuffer *This,
  223.     IRpcChannelBuffer *_pRpcChannelBuffer,
  224.     PRPC_MESSAGE _pRpcMessage,
  225.     DWORD *_pdwStubPhase);
  226. HRESULT STDMETHODCALLTYPE IAccessControl_IsAccessAllowed_Proxy( 
  227.     IAccessControl * This,
  228.     /* [in] */ PTRUSTEEW pTrustee,
  229.     /* [in] */ LPWSTR lpProperty,
  230.     /* [in] */ ACCESS_RIGHTS AccessRights,
  231.     /* [out] */ BOOL *pfAccessAllowed);
  232. void __RPC_STUB IAccessControl_IsAccessAllowed_Stub(
  233.     IRpcStubBuffer *This,
  234.     IRpcChannelBuffer *_pRpcChannelBuffer,
  235.     PRPC_MESSAGE _pRpcMessage,
  236.     DWORD *_pdwStubPhase);
  237. #endif  /* __IAccessControl_INTERFACE_DEFINED__ */
  238. /* interface __MIDL_itf_iaccess_0010 */
  239. /* [local] */ 
  240. extern RPC_IF_HANDLE __MIDL_itf_iaccess_0010_v0_0_c_ifspec;
  241. extern RPC_IF_HANDLE __MIDL_itf_iaccess_0010_v0_0_s_ifspec;
  242. #ifndef __IAuditControl_INTERFACE_DEFINED__
  243. #define __IAuditControl_INTERFACE_DEFINED__
  244. /* interface IAuditControl */
  245. /* [unique][uuid][object] */ 
  246. EXTERN_C const IID IID_IAuditControl;
  247. #if defined(__cplusplus) && !defined(CINTERFACE)
  248.     
  249.     MIDL_INTERFACE("1da6292f-bc66-11ce-aae3-00aa004c2737")
  250.     IAuditControl : public IUnknown
  251.     {
  252.     public:
  253.         virtual HRESULT STDMETHODCALLTYPE GrantAuditRights( 
  254.             /* [in] */ PACTRL_AUDITW pAuditList) = 0;
  255.         
  256.         virtual HRESULT STDMETHODCALLTYPE SetAuditRights( 
  257.             /* [in] */ PACTRL_AUDITW pAuditList) = 0;
  258.         
  259.         virtual HRESULT STDMETHODCALLTYPE RevokeAuditRights( 
  260.             /* [in] */ LPWSTR lpProperty,
  261.             /* [in] */ ULONG cTrustees,
  262.             /* [size_is][in] */ TRUSTEEW prgTrustees[  ]) = 0;
  263.         
  264.         virtual HRESULT STDMETHODCALLTYPE GetAllAuditRights( 
  265.             /* [in] */ LPWSTR lpProperty,
  266.             /* [out] */ PACTRL_AUDITW *ppAuditList) = 0;
  267.         
  268.         virtual HRESULT STDMETHODCALLTYPE IsAccessAudited( 
  269.             /* [in] */ PTRUSTEEW pTrustee,
  270.             /* [in] */ ACCESS_RIGHTS AuditRights,
  271.             /* [out] */ BOOL *pfAccessAudited) = 0;
  272.         
  273.     };
  274.     
  275. #else  /* C style interface */
  276.     typedef struct IAuditControlVtbl
  277.     {
  278.         BEGIN_INTERFACE
  279.         
  280.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  281.             IAuditControl * This,
  282.             /* [in] */ REFIID riid,
  283.             /* [iid_is][out] */ void **ppvObject);
  284.         
  285.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  286.             IAuditControl * This);
  287.         
  288.         ULONG ( STDMETHODCALLTYPE *Release )( 
  289.             IAuditControl * This);
  290.         
  291.         HRESULT ( STDMETHODCALLTYPE *GrantAuditRights )( 
  292.             IAuditControl * This,
  293.             /* [in] */ PACTRL_AUDITW pAuditList);
  294.         
  295.         HRESULT ( STDMETHODCALLTYPE *SetAuditRights )( 
  296.             IAuditControl * This,
  297.             /* [in] */ PACTRL_AUDITW pAuditList);
  298.         
  299.         HRESULT ( STDMETHODCALLTYPE *RevokeAuditRights )( 
  300.             IAuditControl * This,
  301.             /* [in] */ LPWSTR lpProperty,
  302.             /* [in] */ ULONG cTrustees,
  303.             /* [size_is][in] */ TRUSTEEW prgTrustees[  ]);
  304.         
  305.         HRESULT ( STDMETHODCALLTYPE *GetAllAuditRights )( 
  306.             IAuditControl * This,
  307.             /* [in] */ LPWSTR lpProperty,
  308.             /* [out] */ PACTRL_AUDITW *ppAuditList);
  309.         
  310.         HRESULT ( STDMETHODCALLTYPE *IsAccessAudited )( 
  311.             IAuditControl * This,
  312.             /* [in] */ PTRUSTEEW pTrustee,
  313.             /* [in] */ ACCESS_RIGHTS AuditRights,
  314.             /* [out] */ BOOL *pfAccessAudited);
  315.         
  316.         END_INTERFACE
  317.     } IAuditControlVtbl;
  318.     interface IAuditControl
  319.     {
  320.         CONST_VTBL struct IAuditControlVtbl *lpVtbl;
  321.     };
  322.     
  323. #ifdef COBJMACROS
  324. #define IAuditControl_QueryInterface(This,riid,ppvObject)
  325.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  326. #define IAuditControl_AddRef(This)
  327.     (This)->lpVtbl -> AddRef(This)
  328. #define IAuditControl_Release(This)
  329.     (This)->lpVtbl -> Release(This)
  330. #define IAuditControl_GrantAuditRights(This,pAuditList)
  331.     (This)->lpVtbl -> GrantAuditRights(This,pAuditList)
  332. #define IAuditControl_SetAuditRights(This,pAuditList)
  333.     (This)->lpVtbl -> SetAuditRights(This,pAuditList)
  334. #define IAuditControl_RevokeAuditRights(This,lpProperty,cTrustees,prgTrustees)
  335.     (This)->lpVtbl -> RevokeAuditRights(This,lpProperty,cTrustees,prgTrustees)
  336. #define IAuditControl_GetAllAuditRights(This,lpProperty,ppAuditList)
  337.     (This)->lpVtbl -> GetAllAuditRights(This,lpProperty,ppAuditList)
  338. #define IAuditControl_IsAccessAudited(This,pTrustee,AuditRights,pfAccessAudited)
  339.     (This)->lpVtbl -> IsAccessAudited(This,pTrustee,AuditRights,pfAccessAudited)
  340. #endif /* COBJMACROS */
  341. #endif  /* C style interface */
  342. HRESULT STDMETHODCALLTYPE IAuditControl_GrantAuditRights_Proxy( 
  343.     IAuditControl * This,
  344.     /* [in] */ PACTRL_AUDITW pAuditList);
  345. void __RPC_STUB IAuditControl_GrantAuditRights_Stub(
  346.     IRpcStubBuffer *This,
  347.     IRpcChannelBuffer *_pRpcChannelBuffer,
  348.     PRPC_MESSAGE _pRpcMessage,
  349.     DWORD *_pdwStubPhase);
  350. HRESULT STDMETHODCALLTYPE IAuditControl_SetAuditRights_Proxy( 
  351.     IAuditControl * This,
  352.     /* [in] */ PACTRL_AUDITW pAuditList);
  353. void __RPC_STUB IAuditControl_SetAuditRights_Stub(
  354.     IRpcStubBuffer *This,
  355.     IRpcChannelBuffer *_pRpcChannelBuffer,
  356.     PRPC_MESSAGE _pRpcMessage,
  357.     DWORD *_pdwStubPhase);
  358. HRESULT STDMETHODCALLTYPE IAuditControl_RevokeAuditRights_Proxy( 
  359.     IAuditControl * This,
  360.     /* [in] */ LPWSTR lpProperty,
  361.     /* [in] */ ULONG cTrustees,
  362.     /* [size_is][in] */ TRUSTEEW prgTrustees[  ]);
  363. void __RPC_STUB IAuditControl_RevokeAuditRights_Stub(
  364.     IRpcStubBuffer *This,
  365.     IRpcChannelBuffer *_pRpcChannelBuffer,
  366.     PRPC_MESSAGE _pRpcMessage,
  367.     DWORD *_pdwStubPhase);
  368. HRESULT STDMETHODCALLTYPE IAuditControl_GetAllAuditRights_Proxy( 
  369.     IAuditControl * This,
  370.     /* [in] */ LPWSTR lpProperty,
  371.     /* [out] */ PACTRL_AUDITW *ppAuditList);
  372. void __RPC_STUB IAuditControl_GetAllAuditRights_Stub(
  373.     IRpcStubBuffer *This,
  374.     IRpcChannelBuffer *_pRpcChannelBuffer,
  375.     PRPC_MESSAGE _pRpcMessage,
  376.     DWORD *_pdwStubPhase);
  377. HRESULT STDMETHODCALLTYPE IAuditControl_IsAccessAudited_Proxy( 
  378.     IAuditControl * This,
  379.     /* [in] */ PTRUSTEEW pTrustee,
  380.     /* [in] */ ACCESS_RIGHTS AuditRights,
  381.     /* [out] */ BOOL *pfAccessAudited);
  382. void __RPC_STUB IAuditControl_IsAccessAudited_Stub(
  383.     IRpcStubBuffer *This,
  384.     IRpcChannelBuffer *_pRpcChannelBuffer,
  385.     PRPC_MESSAGE _pRpcMessage,
  386.     DWORD *_pdwStubPhase);
  387. #endif  /* __IAuditControl_INTERFACE_DEFINED__ */
  388. /* Additional Prototypes for ALL interfaces */
  389. /* end of Additional Prototypes */
  390. #ifdef __cplusplus
  391. }
  392. #endif
  393. #endif