|
|
 |
- A runtime parameter, LUMAP maps relative file paths to absolute paths
- The LUMAP value consists of one or more space separated value pairs
- Each pair consists of a logical directory name, an equals sign ("=") character, and an absolute path
- Whenever a relative filename is used, the LUMAP will be searched for a logical directory name that matches one or more leading directory names of the relative filename
- If a match is found, the matched portion of the relative filename will be replaced with the absolute path from LUMAP
- Given an LUMAP value of "5=/usr/accounting Mail=/disk2/Mail", the following filenames would be translated as shown:
5/filename -> /usr/accounting/filename
Mail/filename -> /disk2/Mail/filename
x/5/filename -> x/5/filename (unchanged because "x" isn't in LUMAP)
- Functions such as CHF$(800+c) reverse this mapping to return the logical filename
- Using the LUMAP shown above, if "5/abc" was opened on channel 2, the actual file opened would be "/usr/accounting/abc", but CHF$(802) would return "5/abc"
- If more than one logical directory is mapped to the same actual directory ("5=/usr/acct 6=/usr/acct"), then the reverse mapping will map all occurrences of the actual directory to just one of the logical directories
- CHF$(800+c) and similar functions perform reverse mapping on all filenames even if the original filename used an actual rather than a logical directory name
- Filename mapping is applied to both data and program filenames
- Mapping is applied to program filenames before the LIBSTRING directory list is searched
- If a program filename contains a mapped logical directory, the filename will be converted to an absolute path and LIBSTRING will not be used
- May be used to translate Windows reserved names such as LPT1 to usable, non-reserved filenames
- The map "LPT1=D:\dL4\Printers\Printer1.bat" makes it possible to use "$LPT1" as a printer name even though "LPT1" is a reserved filename under Windows
|
 |
|
|