From: SMTP%"lionel@quark.enet.dec.com" 20-JUN-1994 10:46:34.97 To: EVERHART CC: Subj: Re: sys$putmsg without sys$error output From: lionel@quark.enet.dec.com (Steve Lionel) X-Newsgroups: comp.os.vms Subject: Re: sys$putmsg without sys$error output Date: 20 Jun 1994 13:29:35 GMT Organization: Digital Equipment Corporation, Nashua NH Lines: 35 Distribution: world Message-ID: <2u45jv$r54@jac.zko.dec.com> Reply-To: lionel@quark.enet.dec.com (Steve Lionel) NNTP-Posting-Host: quark.zko.dec.com X-Newsreader: mxrn 6.18-16 To: Info-VAX@CRVAX.SRI.COM X-Gateway-Source-Info: USENET In article <20JUN199408303350@author.gsfc.nasa.gov>, rkoehler@author.gsfc.nasa.gov (Bob Koehler) writes: |>In article <1994Jun20.100915.1@condor>, nelkonn@logica.co.uk (Neville Nelkon) writes... |>>I am looking for something similar to sys$putmsg which just provides |>>the expanded text. |>> |>>I do not want the text to go to sys$output/sys$error and would prefer |>>if possible a) not to need to redefine these to NL b) not to perform |>>$fao expansions myself. |>> |> |>See sys$getmsg. No, that just retrieves the message text, it does NOT fill in the FAO arguments and do other formatting. This is actually easy to do, but the documentation is weak as to how. Call SYS$PUTMSG and specify an action routine for doing the display. The routine will be called once per line of the message with a string containing the formatted message text; passed by class S descriptor. You can then do what you want with this string (write it somewhere else, copy it to an application-defined string, etc.) The key is that the action routine should return a status with the low bit clear (0 will work); this will tell SYS$PUTMSG not to write out the text itself. See the example for $PUTMSG in the System Services Reference Manual. -- Steve Lionel Mail: lionel@quark.enet.dec.com SDT Languages Group WWW: http://www.digital.com/info/slionel.html Digital Equipment Corporation 110 Spit Brook Road, ZKO2-3/N30 Nashua, NH 03062-2698 "Free advice is worth every cent" For a summary of Digital's Internet services, send mail to info@digital.com