Arexx and DLG

Until recently, Arexx with DLG has been fairly simplistic when compared to some programs like Thor or TurboText - some basic commands were there, but only within certain contexts. The functionality of dlg.library was not, for example, available to the sysop from Arexx.

As of version 1.27, DLG has a companion library to dlg.library which provides the sysop with as much of dlg.library's functionality as makes sense to implement, as well as those commands available through DLGCron, DLGMail, ResMan, and the online interface DLGRX.


DLGRX - DLG's online Arexx Interpreter


DLGCron's Rexx Interface


DLGRexx.library

dlgrexx.library is an Arexx Function Library, a library that presents an Arexx-friendly interface to arexx processes. This library in turn interfaces directly with dlg.library. Its function is to 'filter' the input from an arexx process in such a whay that dlg.library can deal with them, and to filter any results coming back so that Arexx can properly react to them.

To use dlgrexx.library, you must first add it to an internal list that Arexx maintins. There are two ways to accomplish this: using the Arexx AddLib function within your Arexx script, or use the AmigaDOS LoadResource command in your s:startup-sequence or s:user-startup batch files. While LoadResource is more convenient, using AddLib is safer and is the recommended method.

Example: AddLib

/* Adding DLGrexx.library to the internal Arexx list */
/* Put this at the start of your Arexx script.       */

Options Results

/* Check to see if library is present. Add it if it is not. */

if ~show(l, "dlgrexx.library") then do
   if ~addlib("dlgrexx.library", 0, -30, 0) then do
      say "Could not load dlgrexx.library."
      exit(20)
   end
end

Example: LoadResource

   LoadResource Libs:dlgrexx.library

Example: LoadResource (keeps library from being flushed)

   LoadResource Libs:dlgrexx.library LOCK