Process execution (OMPROCESS)

The OMPROCESS library provides a mechanism for executing a program as a process external to OmniMark. It also provides mechanisms for controlling the input to the external process, and to manipulate the output generated by the external process.

OmniMark programs that use the OMPROCESS library are more likely to be platform-dependent; use of the OMPROCESS library can result in programs that behave differently on different platforms. Consideration should be given to questions of portability before using OMPROCESS.

The following line must be included at the beginning of any OmniMark program using this library:

  import "omprocess.xmd" unprefixed

This is a complete list of the OMPROCESS library external exceptions that may be thrown back to the calling OmniMark program. They are all catchable using the #external-exception label.

  • OMPROCESS_002 Unable to launch process.
  • OMPROCESS_003 Process terminated abnormally.
  • OMPROCESS_004 Directory 'X' is not accessible.
  • OMPROCESS_005 Unable to change to directory 'X'.
  • OMPROCESS_006 Unable to create pipe for 'X'.
  • OMPROCESS_007 Unable to write to child process.
  • OMPROCESS_008 Unable to read from child process.
  • OMPROCESS_801 Unable to glob pattern.