Valid on Alpha and Integrity server systems only. Modifies the current attributes for the specified image file. This command can be used to modify the initial values set by the OpenVMS Integrity servers Linker for certain image attributes. NOTE This command can be executed on an Alpha or Integrity servers system, but it operates only on Integrity servers images. Format SET IMAGE image-filespec
1 – Parameters
image-filespec Specifies the name of an OpenVMS Integrity servers image file to modify. The command overlays the current image file; it does not create a new version of the image file. The asterisk (*) and percent sign (%) wildcard characters are allowed in the file specification if the /RESTORE qualifier is used. If you omit the file type extension, the default file type .EXE is applied.
2 – Qualifier
2.1 /FLAGS
/FLAGS=(keyword[,...]) Specifies which image attribute flags to turn on or off. The original flags are set by the OpenVMS Integrity servers Linker at image link time. The possible keywords are listed below with a brief description. For more information about the image link flags, see the VSI OpenVMS Version 8.2 Release Notes. WARNING Beware of modifying the flag values unless you are very knowledgeable about the internals of the image. Keyword Description [NO]CALL_DEBUG Call Debugger at startup. [NO]DBG_IN_DSF Debug records in debug symbol file. [NO]DBG_IN_IMG Debug records in image file. [NO]EXE_INIT Image has a pointer to EXE$INITIALIZE. [NO]IMGSTA Call SYS$IMGSTA. [NO]INITIALIZE Image has a pointer to LIB$INITIALIZE. [NO]MAIN Image has a main transfer address. [NO]MKTHREADS Enable multiple kernel thread use. [NO]NOP0BUFS No P0 buffers for RMS image I/O. [NO]P0IMAGE Image is loaded only to P0 space. [NO]SIGNATURES TIE Signatures are present. [NO]TBK_IN_DSF Traceback records in debug symbol file. [NO]TBK_IN_IMG Traceback records in image file. [NO]UPCALLS User thread upcalls are enabled.
2.2 /LOG
Displays a message to the output device indicating whether the command successfully modified the image.
2.3 /RESTORE
Restores the original image attributes of the file-that is, the initial attributes that were set by the OpenVMS Integrity servers Linker. You cannot specify the /FLAGS or /SUCCESS qualifier when /RESTORE is used.
2.4 /SUCCESS
Modifies the image link completion code value to SUCCESS. The run-time behavior of the image remains the same as the original link.
3 – Examples
1.$ SHOW IMAGE WARNING Show Image Version 1.2 29-SEP-2004 10:15:52.61 WORK1:[SWEENEY.CLIUTL]WARNING.EXE;1 This is an OpenVMS IA64 (Elf format) executable image file Image Identification Information Image name: WARNING Global Symbol Table name: WARNING Image file identification: X-6 Image build identification: <unavailable> Link identification: Linker T02-14 Link Date/Time: 12-JUN-2004 10:15:16.46 Patch Date/Time: Never Manipulation Date/Time: Never Image Dynamic Data Version: 1.2 Image Completion Code Value: WARNING State: Original Image Link Flags state: Original Image Link Flags -------------------------------------------- CALL_DEBUG : Call debugger IMGSTA : Call SYS$IMGSTA MAIN : Image has main transfer TBK_IN_IMG : Traceback records in image file DBG_IN_IMG : Debug records in image file $! $ SET IMAGE/SUCCESS WARNING.EXE $ SHOW IMAGE WARNING.EXE Show Image Version 1.2 29-SEP-2004 11:41:54.93 WORK1:[SWEENEY.CLIUTL]WARNING.EXE;1 This is an OpenVMS IA64 (Elf format) executable image file Image Identification Information Image name: WARNING Global Symbol Table name: WARNING Image file identification: X-6 Image build identification: <unavailable> Link identification: Linker T02-14 Link Date/Time: 12-JUN-2004 10:02:53.51 Patch Date/Time: Never Manipulation Date/Time: 29-SEP-2004 11:26:31.57 Image Dynamic Data Version: 1.2 Image Completion Code Value: SUCCESS State: Manipulated Image Link Flags state: Original Image Link Flags -------------------------------------------- CALL_DEBUG : Call debugger IMGSTA : Call SYS$IMGSTA MAIN : Image has main transfer TBK_IN_IMG : Traceback records in image file DBG_IN_IMG : Debug records in image file In this example the SET IMAGE/SUCCESS command is used to change the link completion code value in the image to SUCCESS. The output of the second SHOW IMAGE command displays that the image completion code value has been changed. 2.$ SHOW IMAGE SYS$SYSTEM:DCE$DCED.EXE Show Image Version 1.2 29-SEP-2004 12:40:04.32 SYS$COMMON:[SYSEXE]DCE$DCED.EXE;199 This is an OpenVMS IA64 (Elf format) executable image file Image Identification Information Image name: DCE$DCED Global Symbol Table name: DCE$DCED Image file identification: DCE T3.2-040610 Image build identification: <unavailable> Link identification: Linker I01-68 Link Date/Time: 11-JUN-2004 01:50:11.71 Patch Date/Time: Never Manipulation Date/Time: Never Image Dynamic Data Version: 1.1 Image Completion Code Value: SUCCESS State: Original Image Link Flags state: Original Image Link Flags -------------------------------------------- MAIN : Image has main transfer $ SET IMAGE/FLAGS=(MKTH,UPCALL) SYS$SYSTEM:DCE$DCED.EXE $! $ SHOW IMAGE SYS$SYSTEM:DCE$DCED.EXE Show Image Version 1.2 29-SEP-2004 12:43:34.90 SYS$COMMON:[SYSEXE]DCE$DCED.EXE;1 This is an OpenVMS IA64 (Elf format) executable image file Image Identification Information Image name: DCE$DCED Global Symbol Table name: DCE$DCED Image file identification: DCE T3.2-040610 Image build identification: <unavailable> Link identification: Linker I01-68 Link Date/Time: 11-JUN-2004 01:50:11.71 Patch Date/Time: Never Manipulation Date/Time: 29-SEP-2004 12:43:02.14 Image Dynamic Data Version: 1.1 Image Link Flags state: Manipulated Current Image Flags Original Link Flags ------------------- ------------------- MKTHREADS MAIN UPCALLS MAIN Image Link Flag Description --------------- ------------------------------------- MKTHREADS : Multiple kernel threads enabled UPCALLS : Upcalls enabled MAIN : Image has main transfer The SET IMAGE command in this example shows how to enable multiple kernel threads and thread upcalls in the image SYS$SYSTEM:DCE$DCED.EXE. 3.$ SHOW IMAGE PATCH.EXE;61 Show Image 30-SEP-2004 09:06:39.57 WORK1:[SWEENEY.PATCH]PATCH.EXE;61 This is an OpenVMS IA64 (Elf format) executable image file Image name: PATCH Global Symbol Table name: PATCH Link Date/Time: 23-SEP-2004 10:22:07.04 Manipulation Date/Time: Never Link flags state: Original Link Flags ------------------ CALL_DEBUG IMGSTA MAIN TBK_IN_IMG DBG_IN_IMG $ DEFINE PATCH WORK1:[SWEENEY.PATCH]PATCH.EXE;61 $ PATCH X.LIS OpenVMS Integrity servers Debug64 Version 8.2 %DEBUG-I-INITIAL, Language: BLISS, Module: PATMAIN DBG>Exit $ SET IMAGE/FLAGS=NOCALL_DEBUG PATCH.EXE $ PATCH X.LIS OpenVMS PATCH Version 8.2 %PATCH-I-NOGBL, some or all global symbols not accessible %PATCH-I-NOLCL, image does not contain local symbols PATCH> This example demonstrates how to modify an image to stop the debugger from being called when the image is initiated. The image PATCH.EXE was linked with debugging enabled. The SET IMAGE /FLAGS=NOCALL_DEBUG command allows the debugger to be bypassed when the image is run.