⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cmqbpas.pas

📁 delphi写的IBM mq服务器
💻 PAS
📖 第 1 页 / 共 2 页
字号:
unit CMQBPas;

// **************************************************************************
// **************************************************************************
// **************************************************************************
// MQSeries IBM library ported for Delphi by Dinko Miljak
// e-mail: dinmil@flashmail.com
// version 0.0.4 2001-05-07
// **************************************************************************
// **************************************************************************
// **************************************************************************

(**********************************************************************)
(*                                                                    *)
(*                  IBM MQSeries for Windows NT and Windows 2000      *)
(*                                                                    *)
(*  MODULE NAME:    CMQBC                                             *)
(*                                                                    *)
(*  DESCRIPTION:    Declarations for MQ Administration Interface      *)
(*                                                                    *)
(**********************************************************************)
(*  @START_COPYRIGHT@                                                 *)
(*  Licensed Materials - Property of IBM                              *)
(*                                                                    *)
(*  0784726, 5639-B43  MQSeries for Windows NT and Windows 2000       *)
(*                                                                    *)
(*  (C) Copyright IBM Corporation 1994, 2000.                         *)
(*                                                                    *)
(*  Status: Version 5 Release 2                                       *)
(*  @END_COPYRIGHT@                                                   *)
(**********************************************************************)
(*                                                                    *)
(*  FUNCTION:       This file declares the functions and named        *)
(*                  constants for the MQ administration interface     *)
(*                  (MQAI).                                           *)
(*                                                                    *)
(*  PROCESSOR:      C                                                 *)
(*                                                                    *)
(**********************************************************************)

interface

uses SysUtils, CMQPas;

const

  (*********************************************************************)
  (*  Values Related to Specific Functions                             *)
  (*********************************************************************)

  (* Create-Bag Options for mqCreateBag *)
  MQCBO_NONE                   = $00000000;
  MQCBO_USER_BAG               = $00000000;
  MQCBO_ADMIN_BAG              = $00000001;
  MQCBO_COMMAND_BAG            = $00000010;
  MQCBO_SYSTEM_BAG             = $00000020;
  MQCBO_LIST_FORM_ALLOWED      = $00000002;
  MQCBO_LIST_FORM_INHIBITED    = $00000000;
  MQCBO_REORDER_AS_REQUIRED    = $00000004;
  MQCBO_DO_NOT_REORDER         = $00000000;
  MQCBO_CHECK_SELECTORS        = $00000008;
  MQCBO_DO_NOT_CHECK_SELECTORS = $00000000;

  (* Buffer Length for mqAddString and mqSetString *)
  MQBL_NULL_TERMINATED = -1;

  (* Item Type for mqInquireItemInfo *)
  MQIT_INTEGER = 1;
  MQIT_STRING  = 2;
  MQIT_BAG     = 3;


 (*********************************************************************)
 (*  Values Related to Most Functions                                 *)
 (*********************************************************************)

 (* Integer Selectors for Object Attributes *)
 (*   See MQIA_*   values in CMQC   *)
 (*   See MQIACF_* values in CMQCFC *)
 (*   See MQIACH_* values in CMQCFC *)

 (* Character Selectors for Object Attributes *)
 (*   See MQCA_*   values in CMQC   *)
 (*   See MQCACF_* values in CMQCFC *)
 (*   See MQCACH_* values in CMQCFC *)

 (* Handle Selectors *)
  MQHA_FIRST      = 4001;
  MQHA_BAG_HANDLE = 4001;
  MQHA_LAST_USED  = 4001;
  MQHA_LAST       = 6000;

 (* Limits for Selectors for Object Attributes *)
  MQOA_FIRST = 1;
  MQOA_LAST  = 6000;

 (* Integer System Selectors *)
  MQIASY_FIRST             = -1;
  MQIASY_CODED_CHAR_SET_ID = -1;
  MQIASY_TYPE              = -2;
  MQIASY_COMMAND           = -3;
  MQIASY_MSG_SEQ_NUMBER    = -4;
  MQIASY_CONTROL           = -5;
  MQIASY_COMP_CODE         = -6;
  MQIASY_REASON            = -7;
  MQIASY_BAG_OPTIONS       = -8;
  MQIASY_LAST_USED         = -8;
  MQIASY_LAST              = -2000;

 (* Special Selector Values *)
  MQSEL_ANY_SELECTOR         = -30001;
  MQSEL_ANY_USER_SELECTOR    = -30002;
  MQSEL_ANY_SYSTEM_SELECTOR  = -30003;
  MQSEL_ALL_SELECTORS        = -30001;
  MQSEL_ALL_USER_SELECTORS   = -30002;
  MQSEL_ALL_SYSTEM_SELECTORS = -30003;

 (* Special Index Values *)
  MQIND_NONE = -1;
  MQIND_ALL  = -2;

 (* Bag Handles *)
  MQHB_UNUSABLE_HBAG = -1;
  MQHB_NONE          = -2;


 (*********************************************************************)
 (*  Simple Data Types                                                *)
 (*********************************************************************)

 type
   MQHBAG  = MQLONG;
   PMQHBAG = ^MQHBAG;


 (*********************************************************************)
 (*  Short Names for Functions                                        *)
 (*********************************************************************)

 (*
  MQADDIQ  mqAddInquiry
  MQADDIN  mqAddInteger
  MQADDST  mqAddString
  MQBG2BF  mqBagToBuffer
  MQBF2BG  mqBufferToBag
  MQCLRBG  mqClearBag
  MQCNTIT  mqCountItems
  MQCRTBG  mqCreateBag
  MQDELBG  mqDeleteBag
  MQDELIT  mqDeleteItem
  MQEXEC   mqExecute
  MQGETBG  mqGetBag
  MQINQBG  mqInquireBag
  MQINQIN  mqInquireInteger
  MQINQIT  mqInquireItemInfo
  MQINQST  mqInquireString
  MQPAD    mqPad
  MQPUTBG  mqPutBag
  MQSETIN  mqSetInteger
  MQSETST  mqSetString
  MQTRIM   mqTrim
  MQTRNBG  mqTruncateBag
 *)

 (*********************************************************************)
 (*  mqAddInquiry Function -- Add an Inquiry Item to Bag              *)
 (*********************************************************************)

 procedure mqAddInquiry (
   Bag         : MQHBAG;   (* Bag handle *)
   Selector    : MQLONG;   (* Attribute selector *)
   var CompCode: MQLONG;   (* Completion code *)
   var Reason  : MQLONG);  (* Reason code qualifying CompCode *)
  cdecl;
  external 'mqm.dll' name 'mqAddInquiry';

 (*********************************************************************)
 (*  mqAddInteger Function -- Add Integer to Bag                      *)
 (*********************************************************************)

 procedure mqAddInteger (
   Bag         : MQHBAG;   (* Bag handle *)
   Selector    : MQLONG;   (* Item selector *)
   ItemValue   : MQLONG;   (* Item value *)
   var CompCode: MQLONG;   (* Completion code *)
   var Reason  : MQLONG);  (* Reason code qualifying CompCode *)
  cdecl;
  external 'mqm.dll' name 'mqAddInteger';

 (*********************************************************************)
 (*  mqAddString Function -- Add String to Bag                        *)
 (*********************************************************************)

 procedure mqAddString (
   Bag         : MQHBAG;   (* Bag handle *)
   Selector    : MQLONG;   (* Item selector *)
   BufferLength: MQLONG;   (* Length of buffer *)
   var Buffer  : MQCHAR;   (* Buffer containing item value *)
   var CompCode: MQLONG;   (* Completion code *)
   var Reason  : MQLONG);  (* Reason code qualifying CompCode *)
  cdecl;
  external 'mqm.dll' name 'mqAddString';

 (*********************************************************************)
 (*  mqBagToBuffer Function -- Convert Bag to PCF                     *)
 (*********************************************************************)

 procedure mqBagToBuffer (
   OptionsBag    : MQHBAG;   (* Handle of options bag *)
   DataBag       : MQHBAG;   (* Handle of data bag *)
   BufferLength  : MQLONG;   (* Length of buffer *)
   pBuffer       : Pointer;  (* Buffer to contain PCF *)
   var DataLength: MQLONG;   (* Length of PCF returned in buffer *)
   var CompCode  : MQLONG;   (* Completion code *)
   var Reason    : MQLONG);  (* Reason code qualifying CompCode *)
  cdecl;
  external 'mqm.dll' name 'mqBagToBuffer';

 (*********************************************************************)
 (*  mqBufferToBag Function -- Convert PCF to Bag                     *)
 (*********************************************************************)

 procedure mqBufferToBag (
   OptionsBag  : MQHBAG;     (* Handle of options bag *)
   BufferLength: MQLONG;     (* Length of buffer *)
   Buffer      : Pointer;    (* Buffer containing PCF *)
   DataBag     : MQHBAG;     (* Handle of bag to contain data *)
   var CompCode: MQLONG;     (* Completion code *)
   var Reason  : MQLONG);    (* Reason code qualifying CompCode *)
  cdecl;
  external 'mqm.dll' name 'mqBufferToBag';

 (*********************************************************************)
 (*  mqClearBag Function -- Delete All Items in Bag                   *)
 (*********************************************************************)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -