home *** CD-ROM | disk | FTP | other *** search
- Miscellaneous
-
-
- "I got the bill for my surgery. Now I know why those doctors were
- wearing masks."
-
- James H. Barrie
-
-
- The totMISC unit contains a grab-bag of miscellaneous procedures and
- functions that don't logically fit anywhere else in the Toolkit! One
- day they may grow up to have their own units. Some of these routines
- are required by other parts of the Toolkit, and may be of little value
- to you. Nonetheless, they are here if you need them. The procedures and
- functions are organized into three categories: File, Printer and Misc.
-
-
- File Routines
-
- The following file related functions are included in the unit:
-
- Exist(Filename:string):boolean;
-
- This function returns true if a file can be found. The function is
- passed one parameter indicating the name of the file to look for. The
- filename may include an optional drive or path, and even filemasks are
- supported.
-
- Copyfile(Sourcefile,Targetfile:string):byte;
-
- This function physically copies a file like the DOS copy command. The
- function is passed two string parameters: the first string is the name
- of the source file, and the second is the name of the target file. If a
- file with the same name as Target already exists, it will be overwrit-
- ten. The function returns one of the following byte values:
- 0 successful
- 1 source and target the same
- 2 cannot open source
- 3 unable to create target
- 4 error during copy
-
- The function uses a small 2048 byte buffer to copy the file. If you
- want faster file copying, increase the buffer size by modifying the
- variable declaration in the CopyFile function.
-
- FSize(Filename:string): longint;
-
- This function returns a longint indicating the size of a file in bytes.
- The function is passed a single string parameter indicating the name of
- the file. The name may optionally include a drive or path qualifier. If
- the file is not found, a -1 is returned.
-
- 15-2 User's Guide
- --------------------------------------------------------------------------------
-
- FileDrive(Full:string): string;
-
- This function extracts and returns the drive letter (without the colon)
- from a filename. The function is passed one string parameter indicating
- the name of the file. If the name does not include a drive, a null is
- returned, i.e. ''.
-
- FileDirectory(Full:string): string;
-
- This function extracts the directory path (without the drive letter)
- from a filename. The function is passed one string parameter indicating
- the name of the file. If the name does not include a path, a null is
- returned, i.e. ''. The trailing backslash is always removed.
-
-
- FileName(Full:string): string;
-
- This function extracts the file name (excluding the extension) from a
- filename. The function is passed one string parameter indicating the
- name of the file. If the string does not include a name, a null is
- returned, i.e. ''.
-
- FileExt(Full:string): string;
-
- This function extracts the file extension (excluding the period) from a
- filename. The function is passed one string parameter indicating the
- name of the file. If the string does not include an extension, a null
- is returned, i.e. ''.
-
-
- SlashedDirectory(Dir:string): string;
-
- This function is useful for building fully-qualified filenames. The
- function is passed one string parameter indicating the directory. The
- same directory is returned, with a backslash added if the string did
- not already terminate with a backslash or colon.
-
-
- Printer Routines
-
- The unit includes the following printer-related procedures and func-
- tions:
-
- PrinterStatus: byte;
-
-
-
- Miscellaneous 15-3
- --------------------------------------------------------------------------------
-
- This function is designed to indicate if a parallel printer is attached
- and on-line. The global variable LPTport indicates which port to test.
- Set LPTport to 0 for LPT1 (default), 1 for LPT2, etc. The function
- returns one of the following byte values to indicate the status of the
- printer:
-
- 0 printer ready
- 1 no paper
- 2 off line
- 3 busy
- 4 undetermined error
-
- AlternatePrinterStatus: byte;
-
- This function is very similar in operation to PrinterStatus but uses a
- slightly different technique. If you have problems using PrinterStatus
- with some wierdo printer, try this function instead.
-
- PrinterReady: boolean;
-
- This functions returns true if a printer is detected as being on-line
- and ready.
-
- ResetPrinter;
-
- These procedure should reset any printer back to its default (boot-up)
- settings.
-
- PrintScreen;
-
- This procedure emulates the user pressing the PrtScr key, and dumps the
- visible display to the printer port.
-
-
- Misc. Routines
-
- You know you're in trouble when you are reading the Miscellaneous sec-
- tion in the Miscellaneous chapter!
- Listed below are the remaining Toolkit procedures and functions:
-
-
- Beep;
- You guessed! This function emits a brief, but nonetheless irritating,
- beep from the PC speaker.
-
-
- CurrentTime: string;
-
-
-
- 15-4 User's Guide
- --------------------------------------------------------------------------------
-
- This function returns a formatted string representing the current time
- according to the PCs internal clock. The string uses the twelve hour
- format HH:MM:SS a.m./p.m.
-
-
- Swap(var A,B:longint);
- This procedure is passed two longint variable parameters. The procedure
- swaps the contents of the two variables, i.e. A is assigned the value
- of B, and B is assigned the value of A.
-
-
- WithinRange(Min,Max,Test:longint):boolean;
- This function is passed three longint parameters. The function returns
- true if the third value is greater than or equal to the first parameter
- and less than or equal to the second parameter.
-
-
- Be sure to check the README file for any routines that may have been
- added to totMISC since the manual was printed.