Source code of Windows XP (NT5)
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.
 
 
 
 
 
 

161 lines
4.7 KiB

/*++
Copyright (c) 1996-2001 Microsoft Corporation
Module Name:
mqmgmt.h
Abstract:
--*/
#ifndef __MQMGMT_H__
#define __MQMGMT_H__
#ifdef __cplusplus
extern "C"
{
#endif
//********************************************************************
// LOCAL MSMQ MACHINE PROPERTIES
//********************************************************************
enum MQMGMT_MACHINE_PROPERTIES
{
PROPID_MGMT_MSMQ_BASE = 0,
PROPID_MGMT_MSMQ_OPENQUEUES, /* VT_LPWSTR | VT_VECTOR */
PROPID_MGMT_MSMQ_PRIVATEQ, /* VT_LPWSTR | VT_VECTOR */
PROPID_MGMT_MSMQ_DSSERVER, /* VT_LPWSTR */
PROPID_MGMT_MSMQ_CONNECTED, /* VT_LPWSTR */
PROPID_MGMT_MSMQ_TYPE, /* VT_LPWSTR */
};
//********************************************************************
// LOCAL MSMQ QUEUE PROPERTIES
//********************************************************************
enum MQMGMT_QUEUE_PROPERTIES
{
PROPID_MGMT_QUEUE_BASE = 0,
PROPID_MGMT_QUEUE_PATHNAME, /* VT_LPWSTR */
PROPID_MGMT_QUEUE_FORMATNAME, /* VT_LPWSTR */
PROPID_MGMT_QUEUE_TYPE, /* VT_LPWSTR */
PROPID_MGMT_QUEUE_LOCATION, /* VT_LPWSTR */
PROPID_MGMT_QUEUE_XACT, /* VT_LPWSTR */
PROPID_MGMT_QUEUE_FOREIGN, /* VT_LPWSTR */
PROPID_MGMT_QUEUE_MESSAGE_COUNT, /* VT_UI4 */
PROPID_MGMT_QUEUE_USED_QUOTA, /* VT_UI4 */
PROPID_MGMT_QUEUE_JOURNAL_MESSAGE_COUNT,/* VT_UI4 */
PROPID_MGMT_QUEUE_JOURNAL_USED_QUOTA, /* VT_UI4 */
PROPID_MGMT_QUEUE_STATE, /* VT_LPWSTR */
PROPID_MGMT_QUEUE_NEXTHOPS, /* VT_LPWSTR | VT_VECTOR*/
PROPID_MGMT_QUEUE_EOD_LAST_ACK, /* VT_BLOB */
PROPID_MGMT_QUEUE_EOD_LAST_ACK_TIME, /* VT_I4 */
PROPID_MGMT_QUEUE_EDO_LAST_ACK_COUNT, /* VT_UI4 */
PROPID_MGMT_QUEUE_EOD_FIRST_NON_ACK, /* VT_BLOB */
PROPID_MGMT_QUEUE_EOD_LAST_NON_ACK, /* VT_BLOB */
PROPID_MGMT_QUEUE_EOD_NEXT_SEQ, /* VT_BLOB */
PROPID_MGMT_QUEUE_EOD_NO_READ_COUNT, /* VT_UI4 */
PROPID_MGMT_QUEUE_EOD_NO_ACK_COUNT, /* VT_UI4 */
PROPID_MGMT_QUEUE_EOD_RESEND_TIME, /* VT_I4 */
PROPID_MGMT_QUEUE_EOD_RESEND_INTERVAL, /* VT_UI4 */
PROPID_MGMT_QUEUE_EDO_RESEND_COUNT, /* VT_UI4 */
PROPID_MGMT_QUEUE_EOD_SOURCE_INFO, /* VT_VARIANT | VT_VECTOR */
};
//
// Returned Value for PROPID_MGMT_MSMQ_CONNECTED property
//
#define MSMQ_CONNECTED L"CONNECTED"
#define MSMQ_DISCONNECTED L"DISCONNECTED"
//
// Returned value for PROPID_MGMT_QUEUE_TYPE
//
#define MGMT_QUEUE_TYPE_PUBLIC L"PUBLIC"
#define MGMT_QUEUE_TYPE_PRIVATE L"PRIVATE"
#define MGMT_QUEUE_TYPE_MACHINE L"MACHINE"
#define MGMT_QUEUE_TYPE_CONNECTOR L"CONNECTOR"
//
// Returned value for PROPID_MGMT_QUEUE_STATE
//
#define MGMT_QUEUE_STATE_LOCAL L"LOCAL CONNECTION"
#define MGMT_QUEUE_STATE_NONACTIVE L"INACTIVE"
#define MGMT_QUEUE_STATE_WAITING L"WAITING"
#define MGMT_QUEUE_STATE_NEED_VALIDATE L"NEED VALIDATION"
#define MGMT_QUEUE_STATE_ONHOLD L"ONHOLD"
#define MGMT_QUEUE_STATE_CONNECTED L"CONNECTED"
#define MGMT_QUEUE_STATE_DISCONNECTING L"DISCONNECTING"
#define MGMT_QUEUE_STATE_DISCONNECTED L"DISCONNECTED"
//
// Returned value for PROPID_MGMT_QUEUE_LOCATION
//
#define MGMT_QUEUE_LOCAL_LOCATION L"LOCAL"
#define MGMT_QUEUE_REMOTE_LOCATION L"REMOTE"
//
//Returned Value for PROPID_MGMT_QUEUE_XACT and PROPID_MGMT_QUEUE_FOREIGN
//
#define MGMT_QUEUE_UNKNOWN_TYPE L"UNKNOWN"
#define MGMT_QUEUE_CORRECT_TYPE L"YES"
#define MGMT_QUEUE_INCORRECT_TYPE L"NO"
#define MO_MACHINE_TOKEN L"MACHINE"
#define MO_QUEUE_TOKEN L"QUEUE"
#define MACHINE_ACTION_CONNECT L"CONNECT"
#define MACHINE_ACTION_DISCONNECT L"DISCONNECT"
#define MACHINE_ACTION_TIDY L"TIDY"
#define QUEUE_ACTION_PAUSE L"PAUSE"
#define QUEUE_ACTION_RESUME L"RESUME"
#define QUEUE_ACTION_EOD_RESEND L"EOD_RESEND"
typedef PROPID MGMTPROPID;
typedef struct tagMQMGMTPROPS
{
DWORD cProp;
MGMTPROPID* aPropID;
MQPROPVARIANT* aPropVar;
HRESULT* aStatus;
} MQMGMTPROPS;
struct SEQUENCE_INFO
{
LONGLONG SeqID;
ULONG SeqNo;
ULONG PrevNo;
};
HRESULT
APIENTRY
MQMgmtGetInfo(
IN LPCWSTR pMachineName,
IN LPCWSTR pObjectName,
IN OUT MQMGMTPROPS* pMgmtProps
);
HRESULT
APIENTRY
MQMgmtAction(
IN LPCWSTR pMachineName,
IN LPCWSTR pObjectName,
IN LPCWSTR pAction
);
#ifdef __cplusplus
}
#endif
#endif // __MQMGMT_H__