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

//-----------------------------------------------------------------------------
//
//
// 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 ([email protected])")
cpp_quote("")
cpp_quote("Revision History:")
cpp_quote("")
cpp_quote(" 6/5/99 - MikeSwa Created")
cpp_quote("")
cpp_quote("--*/")
import "aqadmin.idl";
#include <lmcons.h>
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);
}