小编Dav*_*yle的帖子

C - >主机上的COBOL中介语通信

在大型机上用C编写的供应商软件包提供了通过用户出口覆盖其部分功能的选项.提供的C函数原型是:

extern int SomeExit (void * Parameters,
                     void * Record1,
                     void * Record2,
                     char ComparisonType,
                     char * RankString,
                     void * NotUsed1,
                     int * NotUsed2)
Run Code Online (Sandbox Code Playgroud)

由于我们主要是COBOL商店,因此我定义了一个Enterprise COBOL 4.2程序(作为DLL)来实现退出,试图遵循IBM ILC指南中给出的约定(https://www.ibm.com/support/knowledgecenter/en /SSLTBW_1.13.0/com.ibm.zos.r13.ceea400/clcccb5.htm#clcccb5)以及此旧SHARE演示文稿中的示例:http://www-01.ibm.com/support/docview.wss?uid = swg27003846&aid = 1但是结果程序在调用退出时和我的DISPLAY消息之前是异常终止.我的假设是我没有正确地声明接收数据结构.下面是我当前测试代码的片段(忽略我的命名约定 - 这是一个证明界面的原型,一旦我的基本调用工作就会被重写为我们的内部标准).

IDENTIFICATION DIVISION.   
PROGRAM-ID.    "SomeExit". 
...
LINKAGE SECTION.                                               
01  WS-PARAMETERS-POINTER       USAGE IS POINTER SYNCHRONIZED. 
01  SORT-PASS-RECORD1-POINTER   USAGE IS POINTER SYNCHRONIZED. 
01  SORT-PASS-RECORD2-POINTER   USAGE IS POINTER SYNCHRONIZED. 
01  WS-COMPARISION-TYPE         PIC X.
01  WS-RANK-STRING-POINTER      USAGE IS POINTER SYNCHRONIZED. 
01  WS-NOT-USED1-POINTER …
Run Code Online (Sandbox Code Playgroud)

c cobol mainframe

5
推荐指数
1
解决办法
189
查看次数

标签 统计

c ×1

cobol ×1

mainframe ×1