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.

Usage Note

To use OMPROCESS, you must import it into your program using an import declaration such as:

  import "omprocess.xmd" unprefixed

OMPROCESS Generated Exceptions

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.