📄 winlua.h
字号:
unsigned char sscp_norm : 1; /* SSCP normal flow */
unsigned char lu_exp : 1; /* LU expedited flow */
unsigned char lu_norm : 1; /* lu normal flow */
#else /*W32*/
unsigned char lu_norm : 1; /* lu normal flow */
unsigned char lu_exp : 1; /* LU expedited flow */
unsigned char sscp_norm : 1; /* SSCP normal flow */
unsigned char sscp_exp : 1; /* SSCP expedited flow */
unsigned char : 2; /* reserved */
unsigned char async : 1; /* flags asynchronous verb
completion */
unsigned char bid_enable : 1; /* Bid Enabled Indicator */
#endif /*W32*/
};
/*****************************************************************************/
/* Structure for common verb header */
/*****************************************************************************/
struct LUA_COMMON
{
unsigned short lua_verb; /* Verb Code */
unsigned short lua_verb_length; /* Length of Verb Record */
unsigned short lua_prim_rc; /* Primary Return Code */
unsigned long lua_sec_rc; /* Secondary Return Code */
unsigned short lua_opcode; /* Verb Operation Code */
unsigned long lua_correlator; /* User Correlation Field */
unsigned char lua_luname[8]; /* Local LU Name */
unsigned short lua_extension_list_offset; /* Offset of DLL Extention Lis*/
unsigned short lua_cobol_offset; /* Offset of Cobol Extension */
unsigned long lua_sid; /* Session ID */
unsigned short lua_max_length; /* Receive Buffer Length */
unsigned short lua_data_length; /* Data Length */
char far *lua_data_ptr; /* Data Buffer Pointer */
unsigned long lua_post_handle; /* Posting handle */
struct LUA_TH lua_th; /* LUA TH Fields */
struct LUA_RH lua_rh; /* LUA RH Fields */
struct LUA_FLAG1 lua_flag1; /* LUA_FLAG1 */
unsigned char lua_message_type; /* sna message command type */
struct LUA_FLAG2 lua_flag2; /* LUA_FLAG2 */
unsigned char lua_resv56[7]; /* Reserved Field */
unsigned char lua_encr_decr_option; /* Cryptography Option */
} ;
/******************* COMMAND SPECIFIC VERB DEFINITIONS ***************/
/*****************************************************************************/
/* Structure for extension routines */
/*****************************************************************************/
struct LUA_EXT_ENTRY
{
unsigned char lua_routine_type; /* Extension Routine Type */
unsigned char lua_module_name[9]; /* Extension Module Name */
unsigned char lua_procedure_name[33]; /* Extension Procedure Name */
} ;
/*****************************************************************************/
/* LUA SPECIFIC FIELDS FOR THE SLI_OPEN VERB */
/*****************************************************************************/
struct SLI_OPEN
{
unsigned char lua_init_type; /* Type of Session Initiation */
unsigned char lua_resv65; /* Reserved Field */
unsigned short lua_wait; /* Secondary Retry Wait Time */
struct LUA_EXT_ENTRY lua_open_extension[3];
unsigned char lua_ending_delim; /* Extension List Delimiter */
} ;
/*****************************************************************************/
/* 10396: LUA Specific fields for the SLI_SEND, SLI_SEND_EX verbs */
/* LUA SPECIFIC FIELDS FOR THE SLI_OPEN, SLI_SEND, RUI_BID AND SLI_BID VERBS */
/* */
/* !!!NOTE!!! - MUST Keep lua_sequence_number[2] the first field in the */
/* SLI_SEND_EX_SPECIFIC structure */
/* */
/* To support backward compatibility for Applications, the */
/* lua_sequence_number array is included both in the union itself and as the */
/* FIRST element of the SLI_SEND_EX_SPECIFIC structure (thus it refers to */
/* exactly the same variable in both cases.) */
/*****************************************************************************/
struct SLI_SEND_EX_SPECIFIC
{
unsigned char lua_sequence_number[2]; /* This field **MUST** be first */
unsigned long lua_data_length_ex; /* data length field for SLI_SEND_EX */
} ;
struct SLI_RECEIVE_EX_SPECIFIC
{
unsigned long lua_max_length_ex; /* max buffer for SLI_RECEIVE_EX */
unsigned long lua_data_length_ex; /* data length for SLI_RECEIVE_EX */
} ;
union LUA_SPECIFIC
{
struct SLI_OPEN open;
unsigned char lua_sequence_number[2]; /* sequence number */
struct SLI_SEND_EX_SPECIFIC send; /* extra length fields */
struct SLI_RECEIVE_EX_SPECIFIC receive; /* extra length fields */
unsigned char lua_peek_data[12]; /* Data Pending */
} ;
/*****************************************************************************/
/* GENERIC LUA VERB RECORD TYPEDEF DECLARATION */
/*****************************************************************************/
typedef struct
{
struct LUA_COMMON common; /* common verb header command */
union LUA_SPECIFIC specific; /* command specific portion of record */
} LUA_VERB_RECORD;
#if (defined WINDOWS) || (defined WIN32)
#ifdef WIN32
// The callback routine registered by the TN3270 Service
typedef BOOL (__stdcall *TN3270SERVICECALLBACK)(unsigned long);
#endif // #ifdef WIN32
/*****************************************************************************/
/*WLUA* Return codes from WinLUAStartup */
/*****************************************************************************/
#define WLUASYSNOTREADY 1
#define WLUAVERNOTSUPPORTED 2
#define WLUAINVALID 3
#define WLUAFAILURE 4
#define WLUAINITREJECT 5
#define WLUADESCRIPTION_LEN 40
typedef struct
{
WORD wVersion;
char szDescription[WLUADESCRIPTION_LEN + 1];
} LUADATA;
/*****************************************************************************/
/*WLUA* Return codes from WinLUA */
/*****************************************************************************/
#define WLUAINVALIDHANDLE 10
#define WLUASTARTUPNOTCALLED 11
/*l110************************************************************************/
/*l110* New codes for RUI_INIT status messages */
/*l110************************************************************************/
#define WLUALINKINACTIVE 12
#define WLUALINKACTIVATING 13
#define WLUAPUINACTIVE 14
#define WLUAPUACTIVE 15
#define WLUAPUREACTIVATED 16
#define WLUALUINACTIVE 17
#define WLUALUACTIVE 18
#define WLUALUREACTIVATED 19
#define WLUASIDINVALID 20
#define WLUASIDZERO 21
#define WLUAALREADYACTIVE 22
#define WLUANTFYINVALID 23
#define WLUAGLOBALHANDLER 24
#define WLUAGETLU 25
#define WLUAUNKNOWN 255
#define WLUA_NTFY_EVENT 1
#define WLUA_NTFY_MSG_CORRELATOR 2
#define WLUA_NTFY_MSG_SID 3
/*l110************************************************************************/
/*l110* End changes */
/*l110************************************************************************/
#endif
/*WLUA************************************************************************/
/*WLUA* Function prototypes */
/*WLUA************************************************************************/
#ifdef WIN32
#define LOADDS
#else
#define LOADDS _loadds
#endif
#if (defined WINDOWS) || (defined WIN32)
int WINAPI LOADDS WinRUI (HWND, LUA_VERB_RECORD FAR *);
int WINAPI LOADDS WinSLI (HWND, LUA_VERB_RECORD FAR *);
BOOL WINAPI LOADDS WinRUICleanup (void);
BOOL WINAPI LOADDS WinSLICleanup (void);
int WINAPI LOADDS WinRUIStartup (WORD, LUADATA FAR *);
int WINAPI LOADDS WinSLIStartup (WORD, LUADATA FAR *);
void WINAPI LOADDS RUI (LUA_VERB_RECORD FAR *);
void WINAPI LOADDS RUI_CALL (LUA_VERB_RECORD FAR *);
void WINAPI LOADDS SLI (LUA_VERB_RECORD FAR *);
int WINAPI LOADDS WinRUIGetLastInitStatus (DWORD dwSid, /*l110*/
HANDLE hStatusHandle, /*l110*/
DWORD dwNotifyType, /*l110*/
BOOL bClearPrevious); /*l110*/
int WINAPI GetLuaReturnCode (struct LUA_COMMON FAR *, UINT, unsigned char FAR *);
#else
void pascal far _loadds RUI (LUA_VERB_RECORD FAR *);
#endif
/*************************************************************************W32*/
/* If Win32 environment then restore original packing format *W32*/
/*************************************************************************W32*/
#ifdef WIN32 /*W32*/
#pragma pack() /*W32*/
#endif /*W32*/
/*****************************************************************************/
/* RUI ENTRY POINT DECLARATION */
/*PORT* Remove prototype defintions since EE header file does not have any */
/*****************************************************************************/
#ifdef __cplusplus
}
#endif
#pragma option pop /*P_O_Pop*/
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -