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.

143 lines
5.1 KiB

  1. //-----------------------------------------------------------------------------
  2. //
  3. //
  4. // File: aqadmrpc.idl
  5. //
  6. // Description: IDL file for Aqueue<->QAPI RPC interface
  7. //
  8. // Author: Mike Swafford (MikeSwa)
  9. // Based on smptsvc.idl code from Johnson Apacible (johnsona) 13-Oct-1995
  10. // Based on srvsvc.idl code from DanL and JohnsonA
  11. //
  12. // History:
  13. // 6/5/99 - MikeSwa Created
  14. // 6/30/99 - MikeSwa Added Link Diagnostic HRESULT
  15. //
  16. // Copyright (C) 1995, 1999 Microsoft Corporation
  17. //
  18. //-----------------------------------------------------------------------------
  19. cpp_quote("/*++")
  20. cpp_quote("")
  21. cpp_quote("Copyright (c) 1999 Microsoft Corporation")
  22. cpp_quote("")
  23. cpp_quote("Module Name:")
  24. cpp_quote("")
  25. cpp_quote(" aqadrpc.idl / aqadmrpc.h")
  26. cpp_quote("")
  27. cpp_quote("Abstract:")
  28. cpp_quote("")
  29. cpp_quote(" This module contains definitions for the RPC interfaces that")
  30. cpp_quote(" implement the Advanced Queue administration object.")
  31. cpp_quote("")
  32. cpp_quote("Author:")
  33. cpp_quote("")
  34. cpp_quote(" Mike Swafford ([email protected])")
  35. cpp_quote("")
  36. cpp_quote("Revision History:")
  37. cpp_quote("")
  38. cpp_quote(" 6/5/99 - MikeSwa Created")
  39. cpp_quote("")
  40. cpp_quote("--*/")
  41. import "aqadmin.idl";
  42. #include <lmcons.h>
  43. cpp_quote("#define AQUEUE_RPC_INTERFACE L\"AqueueRPCInterface\"")
  44. //---[ IAQAdminRPC ]-----------------------------------------------------------
  45. //
  46. //
  47. // Description:
  48. // Interface used to implent client<->server communication to implement
  49. // the QAPI interface
  50. //
  51. //-----------------------------------------------------------------------------
  52. [
  53. uuid(BFA951D1-2F0E-11d3-BFD1-00C04FA3490A),
  54. version(1.0),
  55. ]
  56. interface IAQAdminRPC
  57. {
  58. typedef [handle] LPWSTR AQUEUE_HANDLE;
  59. NET_API_STATUS
  60. NET_API_FUNCTION
  61. AQApplyActionToLinks(
  62. [in, string, unique] AQUEUE_HANDLE wszServer,
  63. [in, string, unique] LPWSTR wszInstance,
  64. [in] LINK_ACTION laAction);
  65. NET_API_STATUS
  66. NET_API_FUNCTION
  67. AQApplyActionToMessages(
  68. [in, string, unique] AQUEUE_HANDLE wszServer,
  69. [in, string, unique] LPWSTR wszInstance,
  70. [in] QUEUELINK_ID *pqlQueueLinkId,
  71. [in] MESSAGE_FILTER *pmfMessageFilter,
  72. [in] MESSAGE_ACTION maMessageAction,
  73. [out] DWORD *pcMsgs);
  74. NET_API_STATUS
  75. NET_API_FUNCTION
  76. AQGetQueueInfo(
  77. [in, string, unique] AQUEUE_HANDLE wszServer,
  78. [in, string, unique] LPWSTR wszInstance,
  79. [in] QUEUELINK_ID *pqlQueueId,
  80. [in, out] QUEUE_INFO *pqiQueueInfo);
  81. NET_API_STATUS
  82. NET_API_FUNCTION
  83. AQGetLinkInfo(
  84. [in, string, unique] AQUEUE_HANDLE wszServer,
  85. [in, string, unique] LPWSTR wszInstance,
  86. [in] QUEUELINK_ID *pqlLinkId,
  87. [in, out] LINK_INFO *pliLinkInfo,
  88. [out] HRESULT *hrLinkDiagnostic);
  89. NET_API_STATUS
  90. NET_API_FUNCTION
  91. AQSetLinkState(
  92. [in, string, unique] AQUEUE_HANDLE wszServer,
  93. [in, string, unique] LPWSTR wszInstance,
  94. [in] QUEUELINK_ID *pqlLinkId,
  95. [in] LINK_ACTION la);
  96. NET_API_STATUS
  97. NET_API_FUNCTION
  98. AQGetLinkIDs(
  99. [in, string, unique] AQUEUE_HANDLE wszServer,
  100. [in, string, unique] LPWSTR wszInstance,
  101. [out] DWORD *pcLinks,
  102. [out, size_is(,*pcLinks)] QUEUELINK_ID **rgLinks);
  103. NET_API_STATUS
  104. NET_API_FUNCTION
  105. AQGetQueueIDs(
  106. [in, string, unique] AQUEUE_HANDLE wszServer,
  107. [in, string, unique] LPWSTR wszInstance,
  108. [in] QUEUELINK_ID *pqlLinkId,
  109. [out] DWORD *pcQueues,
  110. [out, size_is(,*pcQueues)] QUEUELINK_ID **rgQueues);
  111. NET_API_STATUS
  112. NET_API_FUNCTION
  113. AQGetMessageProperties(
  114. [in, string, unique] AQUEUE_HANDLE wszServer,
  115. [in, string, unique] LPWSTR wszInstance,
  116. [in] QUEUELINK_ID *pqlQueueLinkId,
  117. [in] MESSAGE_ENUM_FILTER *pmfMessageEnumFilter,
  118. [out] DWORD *pcMsgs,
  119. [out, size_is(,*pcMsgs)] MESSAGE_INFO **rgMsgs);
  120. NET_API_STATUS
  121. NET_API_FUNCTION
  122. AQQuerySupportedActions(
  123. [in, string, unique] AQUEUE_HANDLE wszServer,
  124. [in, string, unique] LPWSTR wszInstance,
  125. [in] QUEUELINK_ID *pqlQueueLinkId,
  126. [out] DWORD *pdwSupportedActions,
  127. [out] DWORD *pdwSupportedFilterFlags);
  128. }