//---------------------------------------------------------------- // Example of use of VMS System Services // // This module creates a process //---------------------------------------------------------------- main module CREATOR use VMSSTUBS use VMSTYPES use VMSPROC use TEXTIO declare Image_Name = "SYS'$SYSTEM:LOGINOUT.EXE" /// Image_Name = "LOOPER.EXE" Descriptor_to_Image : descriptor Descriptor_to_Process : descriptor Input_Name = "LOOPER.COM" Descriptor_to_Input : descriptor Output_Name = "LOOPER.DAT" Descriptor_to_Output : descriptor Error_Name = "LOOPER.DAT" Descriptor_to_Error : descriptor SYS_Status : integer SYS_Status_2 : integer // gg=8!103 gg=1 // mm=8!134 mm=4 Message :packed array [1..256] of char Descriptor_to_message : descriptor N : word_integer enddeclare // Load the string descriptor block Load_string_descriptor (Descriptor_to_Image, Image_Name) Load_string_descriptor (Descriptor_to_Process, "LOOPER") Load_string_descriptor (Descriptor_to_Input, Input_Name) Load_string_descriptor (Descriptor_to_Output, Output_Name) Load_string_descriptor (Descriptor_to_Error, Error_Name) Load_string_descriptor (Descriptor_to_Message, Message) // Create the process out_line (TTY, "Create the Process") SYS_Status := SYS'$CREPRC (Image :Descriptor_to_Image, PRCNAM:Descriptor_to_Process, UIC:UIC(group:gg,member:mm), BASPRI:2, Input_:Descriptor_to_Input, Error:Descriptor_to_Error, Output:Descriptor_to_Output) out_integer (TTY, SYS_Status) out_record (TTY) SYS_Status_2 := SYS'$GETMSG (MSGID:SYS_Status, MSGLEN:N, Descriptor_to_Message) out_line (TTY, Message, N) endmodule