📄 cmqxpas.pas
字号:
(*
MQDXP_DEFAULT {MQDXP_STRUC_ID_ARRAY},\
MQDXP_CURRENT_VERSION,\
0L,\
0L,\
0L,\
0L,\
0L,\
MQCC_OK,\
MQRC_NONE,\
MQXDR_CONVERSION_FAILED,\
0L
*)
(*********************************************************************)
(* MQPXP Structure -- Publish/Subscribe Routing Exit Parameter *)
(*********************************************************************)
TMQPXP = record
StrucId: MQCHAR4; (* Structure identifier *)
Version: MQLONG; (* Structure version number *)
ExitId: MQLONG; (* Type of exit *)
ExitReason: MQLONG; (* Reason for invoking exit *)
ExitResponse: MQLONG; (* Response from exit *)
ExitResponse2: MQLONG; (* Reserved *)
Feedback: MQLONG; (* Feedback code *)
ExitNumber: MQLONG; (* Exit number *)
ExitUserArea: MQBYTE16; (* Exit user area *)
ExitData: MQCHAR32; (* Exit data *)
HeaderLength: MQLONG; (* Reserved *)
MsgInLength: MQLONG; (* Length of input message data *)
MsgOutLength: MQLONG; (* Length of output message data *)
DestinationType: MQLONG; (* Type of destination for message *)
MsgDescPtr: PMQMD; (* Address of message descriptor *)
MsgInPtr: PMQVOID; (* Address of input message data *)
MsgOutPtr: PMQVOID; (* Address of output message data *)
StreamName: MQCHAR48; (* Name of stream *)
QMgrName: MQCHAR48; (* Name of local queue manager *)
DestinationQName: MQCHAR48; (* Name of destination queue *)
DestinationQMgrName: MQCHAR48; (* Name of destination queue
manager *)
end;
PMQPXP = ^TMQPXP;
(*
MQPXP_DEFAULT {MQPXP_STRUC_ID_ARRAY},\
MQPXP_CURRENT_VERSION,\
MQXT_PUBSUB_ROUTING_EXIT,\
0L,\
MQXCC_OK,\
0L,\
MQFB_NONE,\
1L,\
{MQXUA_NONE_ARRAY},\
{""},\
0L,\
0L,\
0L,\
MQDT_APPL,\
NULL,\
NULL,\
NULL,\
{""},\
{""},\
{""},\
{""}
*)
(*********************************************************************)
(* MQWCR Structure -- Cluster Workload Exit Cluster Record *)
(*********************************************************************)
TMQWCR = record
ClusterName : MQCHAR48; (* Cluster name *)
ClusterRecOffset: MQLONG; (* Offset of next cluster record *)
ClusterFlags : MQLONG; (* Cluster flags *)
end;
PMQWCR = ^TMQWCR;
(*
MQWCR_DEFAULT {""},\
0L,\
0L
*)
(*********************************************************************)
(* MQWDR Structure -- Cluster Workload Exit Destination Record *)
(*********************************************************************)
TMQWDR = record
StrucId : MQCHAR4; (* Structure identifier *)
Version : MQLONG; (* Structure version number *)
StrucLength : MQLONG; (* Length of MQWDR structure *)
QMgrFlags : MQLONG; (* Queue-manager flags *)
QMgrIdentifier : MQCHAR48; (* Queue-manager identifier *)
QMgrName : MQCHAR48; (* Queue-manager name *)
ClusterRecOffset: MQLONG; (* Offset of first cluster record *)
ChannelState : MQLONG; (* Channel state *)
ChannelDefOffset: MQLONG; (* Offset of channel definition
structure *)
end;
PMQWDR = ^TMQWDR;
PPMQWDR = ^PMQWDR;
(*
MQWDR_DEFAULT {MQWDR_STRUC_ID_ARRAY},\
MQWDR_CURRENT_VERSION,\
MQWDR_CURRENT_LENGTH,\
0L,\
{""},\
{""},\
0L,\
0L,\
0L
*)
(*********************************************************************)
(* MQWQR Structure -- Cluster Workload Exit Queue Record *)
(*********************************************************************)
TMQWQR = record
StrucId : MQCHAR4; (* Structure identifier *)
Version : MQLONG; (* Structure version number *)
StrucLength : MQLONG; (* Length of MQWQR structure *)
QFlags : MQLONG; (* Queue flags *)
QName : MQCHAR48; (* Queue name *)
QMgrIdentifier : MQCHAR48; (* Queue-manager identifier *)
ClusterRecOffset: MQLONG; (* Offset of first cluster record *)
QType : MQLONG; (* Queue type *)
QDesc : MQCHAR64; (* Queue description *)
DefBind : MQLONG; (* Default binding *)
DefPersistence : MQLONG; (* Default message persistence *)
DefPriority : MQLONG; (* Default message priority *)
InhibitPut : MQLONG; (* Whether put operations on the queue
are allowed *)
end;
PMQWQR = ^TMQWQR;
PPMQWQR = ^PMQWQR;
(*
MQWQR_DEFAULT {MQWQR_STRUC_ID_ARRAY},\
MQWQR_CURRENT_VERSION,\
MQWQR_CURRENT_LENGTH,\
0L,\
{""},\
{""},\
0L,\
0L,\
{""},\
0L,\
0L,\
0L,\
0L
*)
(*********************************************************************)
(* MQWXP Structure -- Cluster Workload Exit Parameter *)
(*********************************************************************)
TMQWXP = record
StrucId : MQCHAR4; (* Structure identifier *)
Version : MQLONG; (* Structure version number *)
ExitId : MQLONG; (* Type of exit *)
ExitReason : MQLONG; (* Reason for invoking exit *)
ExitResponse : MQLONG; (* Response from exit *)
ExitResponse2 : MQLONG; (* Secondary response from exit *)
Feedback : MQLONG; (* Reserved *)
Reserved : MQLONG; (* Reserved *)
ExitUserArea : MQBYTE16; (* Exit user area *)
ExitData : MQCHAR32; (* Exit data *)
MsgDescPtr : PMQMD; (* Address of message descriptor *)
MsgBufferPtr : PMQVOID; (* Address of buffer containing some
or all of the message data *)
MsgBufferLength : MQLONG; (* Length of buffer containing
message data *)
MsgLength : MQLONG; (* Length of complete message *)
QName : MQCHAR48; (* Queue name *)
QMgrName : MQCHAR48; (* Name of local queue manager *)
DestinationCount : MQLONG; (* Number of possible destinations *)
DestinationChosen : MQLONG; (* Destination chosen *)
DestinationArrayPtr: PPMQWDR; (* Address of an array of pointers to
destination records *)
QArrayPtr : PPMQWQR; (* Address of an array of pointers to
queue records *)
CacheContext : MQPTR; (* Context information *)
CacheType : MQLONG; (* Type of cluster cache *)
end;
PMQWXP = ^TMQWXP;
(*
MQWXP_DEFAULT {MQWXP_STRUC_ID_ARRAY},\
MQWXP_CURRENT_VERSION,\
0L,\
0L,\
MQXCC_OK,\
0L,\
0L,\
0L,\
{MQXUA_NONE_ARRAY},\
{""},\
NULL,\
NULL,\
0L,\
0L,\
{""},\
{""},\
0L,\
0L,\
NULL,\
NULL,\
NULL,\
MQCLCT_DYNAMIC
*)
(*********************************************************************)
(* MQ_CHANNEL_EXIT -- Channel Exit Datatype *)
(*********************************************************************)
// MQCHANNELEXIT MQ_CHANNEL_EXIT
procedure MQ_CHANNEL_EXIT (
pChannelExitParms : Pointer; (* Channel exit parameter block *)
pChannelDefinition : Pointer; (* Channel definition *)
var DataLength : MQLONG; (* Length of data *)
var AgentBufferLength: MQLONG; (* Length of agent buffer *)
pAgentBuffer : Pointer; (* Agent buffer *)
var ExitBufferLength : MQLONG; (* Length of exit buffer *)
pExitBufferAddr : Pointer); (* Address of exit buffer *)
cdecl;
external 'mqm.dll' name 'MQ_CHANNEL_EXIT';
(*********************************************************************)
(* MQ_CHANNEL_AUTO_DEF_EXIT -- Channel Auto Def Exit Datatype *)
(*********************************************************************)
// MQCHANNELAUTODEFEXIT MQ_CHANNEL_AUTO_DEF_EXIT
procedure MQ_CHANNEL_AUTO_DEF_EXIT (
pChannelExitParms: Pointer; (* Channel exit parameter block *)
pChannelDefinition: Pointer); (* Channel definition *)
cdecl;
external 'mqm.dll' name 'MQ_CHANNEL_AUTO_DEF_EXIT';
(*********************************************************************)
(* MQ_CLUSTER_WORKLOAD_EXIT -- Cluster Workload Exit Datatype *)
(*********************************************************************)
procedure MQ_CLUSTER_WORKLOAD_EXIT (
var ExitParms: TMQWXP); (* Exit parameter block *)
cdecl;
external 'mqm.dll' name 'MQ_CLUSTER_WORKLOAD_EXIT';
(*********************************************************************)
(* MQ_DATA_CONV_EXIT -- Data Conversion Exit Datatype *)
(*********************************************************************)
// MQDATACONVEXIT MQ_DATA_CONV_EXIT
procedure MQ_DATA_CONV_EXIT (
var DataConvExitParms: TMQDXP; (* Data-conversion exit parameter
block *)
var MsgDesc: TMQMD; (* Message descriptor *)
InBufferLength: MQLONG; (* Length in bytes of InBuffer *)
pInBuffer: Pointer; (* Buffer containing the unconverted
message *)
OutBufferLength: MQLONG; (* Length in bytes of OutBuffer *)
pOutBuffer: Pointer); (* Buffer containing the converted
message *)
cdecl;
external 'mqm.dll' name 'MQ_DATA_CONV_EXIT';
(*********************************************************************)
(* MQ_PUBSUB_ROUTING_EXIT -- Pub/Sub Routing Exit Datatype *)
(*********************************************************************)
procedure MQ_PUBSUB_ROUTING_EXIT (
var ExitParms: TMQPXP ); (* Exit parameter block *)
cdecl;
external 'mqm.dll' name 'MQ_PUBSUB_ROUTING_EXIT';
(*********************************************************************)
(* MQ_TRANSPORT_EXIT -- Transport Retry Exit Datatype *)
(*********************************************************************)
// MQTRANSPORTEXIT MQ_TRANSPORT_EXIT
procedure MQ_TRANSPORT_EXIT (
pExitParms: Pointer; (* Exit parameter block *)
DestAddressLength: MQLONG; (* Length in bytes of destination IP
address *)
pDestAddress: PMQCHAR); (* Destination IP address *)
cdecl;
external 'mqm.dll' name 'MQ_TRANSPORT_EXIT';
(*********************************************************************)
(* MQXCLWLN Function -- Cluster Workload Navigate Records *)
(*********************************************************************)
procedure MQXCLWLN (
var ExitParms : TMQWXP; (* Exit parameter structure *)
pCurrentRecord: Pointer; (* Address of current record *)
NextOffset : MQLONG; (* Offset of next record *)
pNextRecord : Pointer; (* Address of next record or structure *)
var CompCode : MQLONG; (* Completion code *)
var Reason : MQLONG); (* Reason code qualifying CompCode *)
cdecl;
external 'mqm.dll' name 'MQXCLWLN';
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -