Николай, message key is unprintable. This is not a character ID of a message - it's a 4 byte hex token which identifies this specific message instance internally to the system. QMHRCVM API wants this parameter exactly in this form. You can just pass to QMHRCVM API whatever was passed to you. Alexei always speaking for myself only "We have all reasons to assume that our assumptions are not unreasonable." Николай Писнячевский <nik_iu7@xxxxxxx> Sent by: c400-l-bounces+pytel=us.ibm.com@xxxxxxxxxxxx 07/12/2006 08:52 AM Please respond to C programming iSeries / AS400 <c400-l@xxxxxxxxxxxx> To c400-l@xxxxxxxxxxxx cc Subject [C400-L] Passing parameters to exit program I can't understand the way parameters are passing to my QIBM_QMH_REPLY_INQ exit program. Thera are 8 parameters: 1. BINARY(4) Type of Call 2. CHAR(20) Qualified Message Queue Name 3. CHAR(4) Message Key 4. CHAR(7) Message ID 5. CHAR(132) Reply 6. BINARY(4) Reply Length 7. BINARY(4) CCSID 8. BINARY(4) Return Action Code I'm interested in 2nd and 3d parametres. 2nd parameter is pasiing without problems and i can print it with printf() and pass to other functions. But the 3d parameter passes as ' ' string - so it has unprintable symbols. I tried to write the CL exit program but the situation is the same. With DMPCLPGM i saw the values of all these parameters. They are all have correct meanings but only in hexademical representation. The string values are blank except the 2nd and 5th fields. I want to get 3d parameter in strig representation to pass it to QMHRCVM API. Help me please.