Running the MPEXHOOKed Qedit

The MPEXHOOK procedure, which intercepts file system calls made by Qedit, is activated differently based on whether the program to be executed is a native-mode or a compatibility-mode program. On Classic systems, or on Spectrum systems running compatibility-mode or OCT-mode Qedit, you run the hooked program with lib=p.

  :run qedit.pub.vesoft;lib=p  

Lib=P works equally well with the native mode version of Qedit. However, with Qedit/iX, you can specify an XL file instead of the Lib parameter:

  :run qedit.pub.vesoft;xl="mpexhknl.pub.vesoft"  

The hooked version will work version either way. The Lib parameter is there for MPE compatibility reasons (Classic vs PA-RISC). The XL file parameter is the “correct” way of doing it on MPE/iX.

The following sample User Command, which can be used to run the hooked version of Qedit, determines if Qedit is native-mode or compatibility- mode, and invokes it accordingly.

  parm runparm=0  if finfo("qedit.pub.vesoft",9)="NMPRG" then     run qedit.pub.vesoft;xl="mpexhknl.pub.vesoft";parm=!runparm  else     run qedit.pub.vesoft;lib=p;parm=!runparm  endif  

VESOFT advises that you be running MPEX version 23.11115 or later, so that the Keep-across-accounts feature will work properly with Qedit/iX.

If Qedit/iX aborts with quit parm -50 or -1041, this indicates that the MPEXHOOK support routines are not correctly installed on your system. You will have to stream the VESOFT-supplied job Veproc.Job.Vesoft. If the hooked Qedit/iX still aborts after running this job, you will need to contact VESOFT for a software update.

Running the MPEXHOOKed Qedit