napmanagement.idl 1.6 KB

12345678910111213141516171819202122232425262728293031
  1. /**
  2. * This file is part of the mingw-w64 runtime package.
  3. * No warranty is given; refer to the file DISCLAIMER within this package.
  4. */
  5. import "naptypes.idl";
  6. import "unknwn.idl";
  7. cpp_quote("#include <winapifamily.h>")
  8. cpp_quote("")
  9. cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
  10. cpp_quote("EXTERN_C const CLSID CLSID_NapClientManagement;")
  11. [object, uuid (432a1da5-3888-4b9a-a734-cff1e448c5b9), pointer_default (unique)]
  12. interface INapClientManagement : IUnknown {
  13. HRESULT GetNapClientInfo ([out] WINBOOL *isNapEnabled,[out] CountedString **clientName,[out] CountedString **clientDescription,[out] CountedString **protocolVersion);
  14. HRESULT GetSystemIsolationInfo ([out] IsolationInfo **isolationInfo,[out] WINBOOL *unknownConnections);
  15. HRESULT RegisterSystemHealthAgent ([in] const NapComponentRegistrationInfo *agent);
  16. HRESULT UnregisterSystemHealthAgent ([in] SystemHealthEntityId id);
  17. HRESULT RegisterEnforcementClient ([in] const NapComponentRegistrationInfo *enforcer);
  18. HRESULT UnregisterEnforcementClient ([in] EnforcementEntityId id);
  19. HRESULT GetRegisteredSystemHealthAgents ([out] SystemHealthEntityCount *count,[out, size_is (,*count)] NapComponentRegistrationInfo **agents);
  20. HRESULT GetRegisteredEnforcementClients ([out] EnforcementEntityCount *count,[out, size_is (,*count)] NapComponentRegistrationInfo **enforcers);
  21. };
  22. [object, uuid (07a1127b-18cc-422a-b988-e892600fcc74), pointer_default (unique)]
  23. interface INapClientManagement2 : INapClientManagement {
  24. HRESULT GetSystemIsolationInfoEx ([out] IsolationInfoEx **isolationInfo,[out] WINBOOL *unknownConnections);
  25. };
  26. cpp_quote("#endif")