Follow these steps:
A .DEF file called AMQSVFC2.DEF is also supplied in the samples directory, <drive:\directory>\MQM\TOOLS\C\SAMPLES. Take a copy of this file and rename it, for example, to MYFORMAT.DEF. Make sure that the name of the DLL being created and the name specified in MYFORMAT.DEF are the same. Overwrite the name FORMAT1 in MYFORMAT.DEF with the new format name.
Remember to use this name each time you send a message.
The functions generated by the crtmqcvx command use macros which are written assuming that all structures are packed; they should be amended if this is not the case.
The skeleton includes a sample header file AMQSVMHA.H in the same directory. Make sure that your include path points to this directory to pick up this file.
The AMQSVMHA.H file contains macros that are used by the code generated by the crtmqcvx command. If the structure to be converted contains character data, then these macros call MQXCNVC.
/* Insert the functions produced by the data-conversion exit */
Here, insert the code fragment generated in step 3.
/* Insert calls to the code fragments to convert the format's */
This is followed by a commented-out call to the function ConverttagSTRUCT.
Change the name of the function to the name of the function you added in step 5a above. Remove the comment characters to activate the function. If there are several functions, create calls for each of them.
/* Insert the function prototypes for the functions produced by */
Here, insert the function prototype statements for the functions added in step 5a above.
icc /Ge- /I<drive:\directory>\mqm\tools\c\samples \ /I<drive:\directory>\mqm\tools\c\include MYFORMAT.C \ <drive:\directory>\mqm\tools\lib\mqm.lib MYFORMAT.DEF \ <drive:\directory>\mqm\tools\lib\mqmvx.lib
where <drive:\directory> is specified at installation.
Issue the command file to compile your exit as a DLL file.
Notes: