调用CICS_ExternalCall返回ECI_ERR_INVALID_DATA_LENGTH
请高手相救!
EciParms.eci_version= ECI_VERSION_1;
EciParms.eci_call_type= ECI_SYNC;
memcpy( EciParms.eci_program_name, ProgName , 8 );
memcpy( EciParms.eci_userid,UserName , 8 );
memcpy( EciParms.eci_password, Pass , 8 );
memcpy( EciParms.eci_system_name, Server , 8 );
EciParms.eci_commarea = Buff ;
EciParms.eci_commarea_length = Length ;
EciParms.eci_extend_mode = ECI_NO_EXTEND;
EciParms.eci_luw_token = ECI_LUW_NEW;
EciParms.eci_timeout = TimeOut ;
Rc = CICS_ExternalCall( &EciParms ) ;
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
呵呵,这个问题我解决了,不好意思,一直没说
原因是我把原来应该是CTG调用的误以为是DEC调用的方式了,所以调用的。h有问题。
"ECI_ERR_INVALID_DATA_LENGTH"不是说得很清楚吗?
Buff的长度是不是Length啊?通常应该定义为:
char Buff[CICS_COMM_SIZE];
EciParms.eci_commarea = Buff ;
EciParms.eci_commarea_length = CICS_COMM_SIZE ;