//----------------------------------------------------------------------------- // // // File: aqadmrpc.idl // // Description: IDL file for Aqueue<->QAPI RPC interface // // Author: Mike Swafford (MikeSwa) // Based on smptsvc.idl code from Johnson Apacible (johnsona) 13-Oct-1995 // Based on srvsvc.idl code from DanL and JohnsonA // // History: // 6/5/99 - MikeSwa Created // 6/30/99 - MikeSwa Added Link Diagnostic HRESULT // // Copyright (C) 1995, 1999 Microsoft Corporation // //----------------------------------------------------------------------------- cpp_quote("/*++") cpp_quote("") cpp_quote("Copyright (c) 1999 Microsoft Corporation") cpp_quote("") cpp_quote("Module Name:") cpp_quote("") cpp_quote(" aqadrpc.idl / aqadmrpc.h") cpp_quote("") cpp_quote("Abstract:") cpp_quote("") cpp_quote(" This module contains definitions for the RPC interfaces that") cpp_quote(" implement the Advanced Queue administration object.") cpp_quote("") cpp_quote("Author:") cpp_quote("") cpp_quote(" Mike Swafford (mikeswa@microsoft.com)") cpp_quote("") cpp_quote("Revision History:") cpp_quote("") cpp_quote(" 6/5/99 - MikeSwa Created") cpp_quote("") cpp_quote("--*/") import "aqadmin.idl"; #include cpp_quote("#define AQUEUE_RPC_INTERFACE L\"AqueueRPCInterface\"") //---[ IAQAdminRPC ]----------------------------------------------------------- // // // Description: // Interface used to implent client<->server communication to implement // the QAPI interface // //----------------------------------------------------------------------------- [ uuid(BFA951D1-2F0E-11d3-BFD1-00C04FA3490A), version(1.0), ] interface IAQAdminRPC { typedef [handle] LPWSTR AQUEUE_HANDLE; NET_API_STATUS NET_API_FUNCTION AQApplyActionToLinks( [in, string, unique] AQUEUE_HANDLE wszServer, [in, string, unique] LPWSTR wszInstance, [in] LINK_ACTION laAction); NET_API_STATUS NET_API_FUNCTION AQApplyActionToMessages( [in, string, unique] AQUEUE_HANDLE wszServer, [in, string, unique] LPWSTR wszInstance, [in] QUEUELINK_ID *pqlQueueLinkId, [in] MESSAGE_FILTER *pmfMessageFilter, [in] MESSAGE_ACTION maMessageAction, [out] DWORD *pcMsgs); NET_API_STATUS NET_API_FUNCTION AQGetQueueInfo( [in, string, unique] AQUEUE_HANDLE wszServer, [in, string, unique] LPWSTR wszInstance, [in] QUEUELINK_ID *pqlQueueId, [in, out] QUEUE_INFO *pqiQueueInfo); NET_API_STATUS NET_API_FUNCTION AQGetLinkInfo( [in, string, unique] AQUEUE_HANDLE wszServer, [in, string, unique] LPWSTR wszInstance, [in] QUEUELINK_ID *pqlLinkId, [in, out] LINK_INFO *pliLinkInfo, [out] HRESULT *hrLinkDiagnostic); NET_API_STATUS NET_API_FUNCTION AQSetLinkState( [in, string, unique] AQUEUE_HANDLE wszServer, [in, string, unique] LPWSTR wszInstance, [in] QUEUELINK_ID *pqlLinkId, [in] LINK_ACTION la); NET_API_STATUS NET_API_FUNCTION AQGetLinkIDs( [in, string, unique] AQUEUE_HANDLE wszServer, [in, string, unique] LPWSTR wszInstance, [out] DWORD *pcLinks, [out, size_is(,*pcLinks)] QUEUELINK_ID **rgLinks); NET_API_STATUS NET_API_FUNCTION AQGetQueueIDs( [in, string, unique] AQUEUE_HANDLE wszServer, [in, string, unique] LPWSTR wszInstance, [in] QUEUELINK_ID *pqlLinkId, [out] DWORD *pcQueues, [out, size_is(,*pcQueues)] QUEUELINK_ID **rgQueues); NET_API_STATUS NET_API_FUNCTION AQGetMessageProperties( [in, string, unique] AQUEUE_HANDLE wszServer, [in, string, unique] LPWSTR wszInstance, [in] QUEUELINK_ID *pqlQueueLinkId, [in] MESSAGE_ENUM_FILTER *pmfMessageEnumFilter, [out] DWORD *pcMsgs, [out, size_is(,*pcMsgs)] MESSAGE_INFO **rgMsgs); NET_API_STATUS NET_API_FUNCTION AQQuerySupportedActions( [in, string, unique] AQUEUE_HANDLE wszServer, [in, string, unique] LPWSTR wszInstance, [in] QUEUELINK_ID *pqlQueueLinkId, [out] DWORD *pdwSupportedActions, [out] DWORD *pdwSupportedFilterFlags); }