Ошибка «Не удается разрешить объект. Тип и подтип X'0203« Authority X'0000 »возникает при вызове программы RPGLE через CGI - PullRequest
0 голосов
/ 27 апреля 2019

Я вызываю программу RPGLE через CGI. Программа RPGLE вызывает несколько процедур связанной с ней сервисной программы.

В большинстве случаев программа работает нормально, но иногда выдает ошибку ниже, говоря, что не может разрешить объект служебной программы.

MCH3401 - Не удается разрешить объект MYSRVPGM. Тип и подтип X'0203 ' Authority X'0000 '

Примечание: я ничего не менял в списке кодов или библиотек, и программа всегда вызывается в одной и той же среде

1 Ответ

1 голос
/ 27 апреля 2019

Предполагая, что CGI всегда вызывается с одним и тем же списком библиотек ...

И что * SRVPGM не был удален (и впоследствии воссоздан) при запуске программы CGI ...

Тогда такие странные ошибки во время выполнения могут быть вызваны несовпадением параметров, приводящим к повреждению памяти.

Проверьте пармы, используемые для вызова любых программ или процедур, а не только процедур MYSRVPGM.

В частности, если у вас есть локальные дубликаты прототипов, то есть вместо / COPY'а пиара PR в вызывающем и вызываемом объектах, вы кодировали PR отдельно как в вызывающем, так и в вызываемом абоненте.

Также в любом месте, где вы используете не прототипный вызов.

...