CONFIGSYS="statement[|modifiers...]"
attribute to
the opening PCK
tag is a bit complex,
but very flexible.
Note that we do not recommend changing CONFIG.SYS in the first place. With many applications, CONFIG.SYS changes are the result of a lack of conceptual design on the programmer's part. Especially if you think of changing the system paths, think again. This forces the user to reboot, slows down the system, makes de-installation more difficult, and moving application directories on the hard disk becomes a real hassle.
Per default (that is, if no "modifiers"
are specified),
this will simply add "statement"
to a new line at the end of
the user's CONFIG.SYS file.
However, there are many "modifiers"
available which
allow for a more flexible CONFIG.SYS manipulation, which is necessary in
many cases. These modifiers must appear after a "|"
character.
UNIQUE
"statement"
occurs only once in
CONFIG.SYS. If "statement"
contains a "="
character,
CONFIG.SYS is searched for the part before the "="
char and that line is
deleted before the new line is appended to the bottom of CONFIG.SYS
(this can be changed with ADDTOP
, ADDBEFORE
, ADDAFTER
).
Example:
CONFIGSYS="BASEDEV=CRASHSYS.ADD /DOCRASH | UNIQUE"
ADDRIGHT
"statement"
contains a "="
character and searches CONFIG.SYS for that first part.
If it is found, the part after the "="
character is appended to that
line in CONFIG.SYS.
If no corresponding line is found, a new line is added to the bottom of CONFIG.SYS
(this can be changed with ADDTOP
, ADDBEFORE
, ADDAFTER
).
This cannot be used with UNIQUE
or ADDLEFT
.
Example:
CONFIGSYS="SET PATH=$(1)\BIN | ADDRIGHT"appends the
BIN
subdirectory of the target path of package 1 to the system path.
ADDLEFT
ADDRIGHT
, but the part after the "="
character is inserted
at the beginning of the list. This is only recommended if your data needs to appear
first in the list (e.g. for replacing system DLLs). Be very careful with this one,
this can lead to real problems.
This cannot be used with UNIQUE
or ADDRIGHT
.
ADDTOP
or ADDAFTER(xxx)
or ADDBEFORE(xxx)
Examples:
CONFIGSYS="BASEDEV=CRASHSYS.ADD /DOCRASH | UNIQUE ADDBEFORE(IBM1S506.ADD)"searches CONFIG.SYS for the line containing
"IBM1S506.ADD"
(the
IBM IDE driver) and inserts BASEDEV=CRASHSYS.ADD / DOCRASH
right before that
line.
CONFIGSYS="SET INCLUDE=$(1)\INCLUDE | ADDRIGHT ADDAFTER(SET BOOKSHELF)"searches CONFIG.SYS for a line starting with
"SET INCLUDE="
. If such
a line is found, assuming that the target path of package 1 is "F:\WHATEVER",
"F:\WHATEVER\INCLUDE" is appended to that line. If that line is not found, a new line
containing "SET INCLUDE=F:\WHATEVER\INCLUDE"
is added before the line
which contains "SET BOOKSHELF="
. Whoa.
REMOVELINE
"statement"
is taken as a search string. If that string
is found, the whole line which contains it is removed.
Example:
CONFIGSYS="BASEDEV=CRASHSYS.ADD | UNIQUE ADDBEFORE(IBM1S506.ADD)" CONFIGSYS="BASEDEV=IBM1S506.ADD | REMOVE"
REMOVEPART
If a "="
character is found in "statement"
,
the CONFIG.SYS line starting with the first part of "statement"
is searched, and the second part of "statement"
is removed.
(Useful for "SET PATH=WHATEVER"
and the like.)