Topic : TOS - das Betriebssystem Author : Version : tos.hyp (5. März 2013) Subject : Programmieren/Atari Nodes : 3001 Index Size : 93602 HCP-Version : 5 Compiled on : Atari @charset : atarist @lang : @default : Titel @help : @options : +g -i -s +x +zz -t4 @width : 70 View Ref-File8.3.17 x_appl_flags TOS Name: »Control execution flags« - (Geneva) AES-Nummer: 28928 Deklaration: int16_t x_appl_flags( int16_t getset, int16_t index, APPFLAGS *flags ); Beschreibung: The call x_appl_flags controls the execution flags that are used when determining how an application gets run. It works in two modes, globally and for a particular application. Mode 0: Get by index Get the 'nth' block of global application flags. If index is zero, the Default flags will be retrieved. If flags is not NULL, the flags will be copied into the APPFLAGS structure pointed to by the flags parameter. Mode 1: Set by index Set the 'nth' block of global application flags. If flags is not NULL, the flags will be copied from the APPFLAGS structure pointed to by the flags parameter. If index is zero, the Default flags will be set, in which case the name and desc fields of the APPFLAGS are not altered. If index is less than zero, a new APPFLAGS structure will be added to the end of the global list, and it will be given the contents of flags. Mode 2: Delete by index Delete the 'nth' block of global application flags. The index parameter must be a number greater than zero (since the Default flags cannot be deleted.) The flags parameter is not used in this mode. Mode 3: Get by application ID Get the application flags for a particular process.index must be a valid application ID. If flags is not NULL, the flags will be copied into the APPFLAGS structure pointed to by the flags parameter. Mode 4: Set by application ID Set the application flags for a particular process.index must be a valid application ID. If flags is not NULL, the flags will be set for the application. Mode 5: (X_APF_SEARCH) (since Update 004) Use the APPFLAGS name element to search for the set of flags that would be used by Geneva were it to run the application with that name. Note that the name element is overwritten in the process. The index parameter is not used. Example: Get the flags for FOO.PRG and force it to run in single-tasking mode: APPFLAGS a; SHWRCMD shwrcmd; strcpy( a.name, "FOO.PRG" ); x_appl_flags( X_APF_SEARCH, 0, &a ); a.flags.s.multitask = 0; shwrcmd.name = "FOO.PRG"; shwrcmd.app_flags = a.flags.l; shel_write( XSHD_FLAGS|XSHW_RUNANY, 0, 0, (char *)&shwrcmd, "" ); Note: Changing the multitask attribute of an application in this manner will have no effect, since this can only be changed before the application is launched. Descriptions of each of the available flags can be found in the section of the manual describing the Task Manager's "Flags" dialog. Ergebnis: 0: Out of memory (mode 1) Flags not found (all modes) Verfügbar: Die Funktion steht nur unter Geneva zur Verfügung. Gruppe: Applikationen Querverweis: Binding