Article 161690 of comp.os.vms:

In article <59e4o5$qfl@topgun.es.dupont.com>, dafniotis@gvcrd1.dnet.dupont.com (Petros Dafniotis, DuPont Central R & D) writes...
>In article <32BAEC70.7D9F@LIVJM.AC.UK>, Andy Freeborough <LEAAFREE@LIVJM.AC.UK> writes:
>>Hi,
>>
>>I am trying to prevent the output of a program coming to the screen. I 
 :
>>The text that I am trying to avoid is an error message from the SET 
>>PROCESS/NAME="bob" command, for example.

Others have already correctly responded with explanations of SYS$ERROR
and the virtues of SET MESS in combinations with f$environment("MESSAGE").

I just want to add to that my comment that there is frequently extra milage
to be made by thinking through how to avoid the message in the first place!

A classical case is a procedure trying to clean up from previous runs by
deleting a temp file which may or might not be there. Well, instead of 
trying to hide the message from an unconditionall $DELET, I prefer 
constructions like:
	$workfile = "test.tmp"
	:
	$deletefile = F$SEARCH ( workfile )
	$IF deletefile.nes."" THEN DELETE 'deletefile'
	:

In the case of process names for non-privved users I like to propose
a quick F$GETJPI loop (privved users should use F$CONTECT first)

$all_names = "Ne Quittez Pas!Nice View      Ogenblikje SVP!Verboden Vrucht"
$!            123456789012345123456789012345123456789012345123456789012345 
$ctx = ""
$pid_loop:
$pid = f$pid(ctx)
$if pid .eqs. "" then goto set_proc_name	! More processes to look at?
$all_names = all_names - f$getjpi(pid,"PRCNAM") ! Remove name found in use
$goto pid_loop
$set_proc_name:
$set proc/name="''f$extract(0,15,all_names)'"   ! Grab first unused name

Hope this helps,		+--------------------------------------+
Hein van den Heuvel, Digital.	| All opinions expressed are mine, and |
  "Makers of VMS and other	| may not reflect those of my employer |
   fine Operating Systems."	+--------------------------------------+


