acnet_chgpgm
status.i4.v = acnet_chgpgm(console_number.i4.v, task.i1a.r, slot.i4.v
[,command_buf.i1a.r] [,SCRIPT.i4.v] [,command_buffer_length.i4.v])
This routine starts up a program on a specified console and slot.
console_number console number (e.g. 32)
task name of application program (e.g. "PA1014"); or
null-terminated name of application page (e.g. "D111")
slot start it on this console slot number
(PA_SLOT -> primary application PA,
PB_SLOT -> primary application PB,
PC_SLOT -> primary application PC,
PD_SLOT -> primary application PD,
PE_SLOT -> primary application PE,
SA_SLOT -> secondary application SA,
SB_SLOT -> secondary application SB,
SC_SLOT -> secondary application SC,
SD_SLOT -> secondary application SD,
SE_SLOT -> secondary application SE,
ALARM_SLOT -> reserved for alarm system,
UTIL_SLOT -> utility window,
NONUSER_SLOT -> background user process)
(Specifying a slot of zero causes the system to
select an unused slot from either SA_SLOT,
SB_SLOT, SC_SLOT, SD_SLOT, or SE_SLOT. If all slots are
in use, then this is equivalent to a request for SB_SLOT.)
[command_buf] optional "command_buffer_length" byte buffer of data to
be delivered to target program (it receives with a call
to 'getcmd') (default is NULL) The caller may leave
portions of this buffer unused/ uninitialized so long as
the target program treats the buffer it receives in the
same fashion. BUT THERE MUST ACTUALLY BE MEMORY ALLOCATED
FOR ANY SUCH UNUSED PORTION, SINCE THIS ROUTINE WILL
COPY THE ENTIRE BUFFER ELSEWHERE. IF SUCH MEMORY IS NOT
ACTUALLY ALLOCATED THE COPY'S READ MAY CRASH.
[SCRIPT] if TRUE, the command buffer (assumed to be of type
do_script_t) will be used to invoke a SCRIPT
(see structure do_script_t in cns_data_structs)
(default is FALSE)
[command_buffer_length] command buffer length in bytes
(default is CMD_LIN_SIZ)
This function returns ACNET status values as follows:
CBS_OK success
CBS_MEMFAIL dynamic memory allocation failure
ACNET_UTIME reply timed out
ACNET_xxx change program request or console node
translation failed
CLIB_CHGPGM_BADSLOT invalid slot number passed
CLIB_CHGPGM_BUFLOCK command line buffer is locked
Function will call error_display if 'error_imbedded_on' has
been called.
This function requires the following include files:
cnsparam_h, cns_data_structs_h, cbslib_h, acnet_errors_h
Related functions:
chgpgm, getcmd, acnet_send_wait
C/C++ usage:
char command_buffer[CMD_LIN_SIZ];
static const char pa_task[] = "D111";
static const char sa_task[] = "SA1082";
int status;
int console_number = 32;
int slot = PA_SLOT;
int SCRIPT = FALSE;
status = acnet_chgpgm(console_number,pa_task,slot,command_buffer,
SCRIPT);
slot = SA_SLOT;
status = acnet_chgpgm(console_number,sa_task,slot,command_buffer,
SCRIPT);