                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                   <<-- The Ultimate in Security -->>
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                        School-Lock Version 2.00
                   Copyright (C) 1995-1996 by AntBytes
                          All rights reserved.
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                        Documentation by AntBytes

The entire package is Copyright (C) 1995-1996 AntBytes
All rights reserved.
Trademarks are properties of their respective owners.

TABLE OF CONTENTS

CHAPTER 1: INTRODUCTION AND LEGAL TERMS

Introduction............................1.1
Legal Terms and Conditions..............1.2
Registering.............................1.3

CHAPTER 2: INSTALLATION

Decompression and Directories...........2.1 
Initialization..........................2.2

CHAPTER 3: BASIC COMPUTER SECURITY

BIOS....................................3.1
DOS.....................................3.2
Windows.................................3.3

CHAPTER 4: COMMAND LINE SWITCHES

An Overview Of Switches.................4.1
Help Switches...........................4.2
/SETT...................................4.3
/ACT....................................4.4
/READ and /WRITE........................4.5
/BOOT and /LOCK.........................4.6
/LOG and /DISPLAY.......................4.7
/BAT and /EXEC..........................4.8

CHAPTER 5: PRACTICAL USE OF SCHOOL-LOCK

Home Use................................5.1
School Use..............................5.2

CHAPTER 6: A DEMONSTRATION

Batch Files.............................6.1
Compiled Files..........................6.2

CHAPTER 7: MISC.

Acknowledgments.........................7.1
Compatibility...........................7.2
Past and Future.........................7.3

INDEX OF ERRORS

CHAPTER 1: INTRODUCTION AND LEGAL TERMS

1.1 
  Introduction

     School-Lock is not a security program, nor is it a recovery
system.  School-Lock is both, combined into a simple, easy to use
package.  School-Lock is a software package that is appealing to
schools and large institutions that need to restrict user access,
but still leave the computers largely accessible.  Also, these
institutions need a way to recover information from the computer
should it become damaged, because a mess up with a computer can
set back a class a week or two.
     School-Lock's security features are immense.  They encompass
many aspects of computer protection.  School-Lock is able to make
the computer(s) that it resides on extremely secure to both the
passerby and the dedicated system hacker.  It is able to do this
because of a few thoughtful strategies.  
     The first tactic that School-Lock uses is three levels of
security.  Some protection programs require that a Password be
entered to gain access to a system.  Others (such as the UNIX
Operating System) require both a correct UserID and Password.
However, School-Lock won't even show an entry screen for the
UserID until a Hotkey is entered.  This key is definable by you,
and can be ANY of the 255 combinations possible on the standard
IBM AT keyboard.  This feature makes access even much more
difficult.
     Another tactic that School-Lock utilizes is a reversal
scheme.  Most security programs are used to keep a user out of a
specific program or computer; School-Lock is also capable of
doing this.  However, as this tactic has been in use for many
years, it can be defeated.  Insteas, School-Lock places the user
into a user-definable program, and won't let them leave without a
Hotkey, UserID, and Password.
     Other security benefits that School-Lock has, are: A log
(either by invalid entries or a command switch), no Ctrl-Alt-Brk,
Ctrl-Alt-Del, Ctrl-C, Ctrl-Brk, or Alt-003 key-strokes, beeping
on invalid tries, and on the third invalid try (after the Hotkey
has been found) the computer can be either locked up or rebooted.
     School-Lock's system recovery features aren't as immense as
its security traits, but they do encompass areas that aren't
addressed by many other programs.  In fact, School-Lock's
recovery system currently consists of only a CMOS Read/Write. 
However, the importance of the CMOS is so incredible that these
two functions are enough.
     
     Please keep in mind the fundamental good spirit associated
with free distribution software as you endure the following
barrage of legalities.  Then evaluate the outstanding value that
the School-Lock package offers you.  I assure you that you will
not be disappointed.

1.2
  Legal Terms and Conditions

     This package is provided to you, the consumer, under the
following conditions:

1.  You may copy the SCHLOCKx.ZIP and SCHLOCKx.EXE files, and
give them to anyone who accepts these terms.  The copies you
distribute should be complete and unmodified.  You do not have to
register School-Lock to distribute this package.

2.  Even if you have not yet obtained full execution rights (by
registering), you may execute the programs in this package, in
order to evaluate them.  If you decide that School-Lock is of
benefit to you, you can become a registered user by sending the
information contained in the file register.txt to AntBytes.
    Once you register this package, you are registered for the
next version as well.  You have permanent rights to execute
School-Lock as per registration agreement.

3.  This package may not be sold to anyone.  If the School-Lock
package is distributed on a diskette or other media, any fees
collected must be specified as materials/handling and may not
exceed a total of $10.00 (ten U.S. dollars).  This fee also
includes connect time, downloads, etc...

4.  Although this package has been thoroughly tested,
compatibility is not guaranteed.  The user is completely
responsible for determining the fitness or usability of this
package.  AntBytes will not be liable for any damages, of any
kind, arising from the failure of any program(s) in the School-
Lock package to perform as described or expected.  The user
accepts and uses these programs at their own risk.

5.  The user should not re-assemble, disassemble, reverse
engineer, or otherwise break down or modify the code of the
programs in the School-Lock package, for distribution purposes or
otherwise.

6.  AntBytes reserves the right to withhold other terms and
conditions, and can change the above without notice.  AntBytes
also reserves the right to refuse registrations.

1.3
  Registering

     The School-Lock package is not free, it is Shareware. 
Shareware is a concept that allows software authors to distribute
their products without shrink wrapping them.  This allows for
software to priced a little cheaper.  Enter School-Lock, and its
prices.   
     The three license types provided by School-Lock allow for
great flexibility, and amazingly cheap prices.  The prices (as of
Version 2.00) for School-Lock are as follows:

          Personal License............. $15.00
          Site License................. $120.00
          Network License.............. $120.00

     Personal licenses are just that, a license for a single
user.  However, the personal license allows for 2 computers to
legally have School-Lock on them.  Usually these systems are
comprised of one computer at home and another at work.  
     The Network and Site Licenses are the same.  They allow for
unlimited computers at a site, or unlimited servers on a network
(LAN), to run School-Lock.  There are other benefits to
registering School-Lock, besides the wonderful pricing scheme.  
     The first such benefit is the removal of the nag screen. 
School-Lock's nag screen lasts as many seconds as the number of
times that it has been used.  Registering removes this.
     The second benefit to registering comes with the ability to
use all of School-Lock's features.  School-Lock, in its
unregistered form is crippled.  The user cannot view the logs
made, nor can they restore the saved CMOS settings.  Also, when a
silent log is made (by using the /log switch), the nag screen
comes up inhibiting the "silent" log.  This is all remedied by
registering School-Lock.
     Yet another advantage to registering School-Lock is that you
will receive one free update.  If you register Version 2.00, when
AntBytes finishes the next one, AntBytes will send you a
registered copy, free of charge.  Updates after the first free
one will come at a reduced price of 25% off.
     Finally, there are the intangible benefits to registering
School-Lock.  You know that you've done the right thing.  You're
letting AntBytes know that you appreciate what AntBytes done. 
You're letting the world know that quality software can succeed
when distributed as shareware.
     To register School-Lock, fill out the form presented in the
file 'register.txt', and e-mail or snail mail it to AntBytes at
the indicated address.

CHAPTER 2: INSTALLATION

2.1
  Decompression and Directories

     The School-Lock package comes compressed as a single file,
if found on the internet or BBS's, or compressed with an install
program if found on distribution diskettes.  If the file was
found as a compressed file, it should be labelled SCHLOCKx.ZIP OR
SCHLOCKx.EXE, where 'x' is the Version number.  Version 2.00
should have come in a file called SCHLOCK2.ZIP or SCHLOCK2.EXE. 
If the original file was SCHLOCK2.ZIP, it should be decompressed
with PkUnzip Version 2.04 using the '-d' option.  SCHLOCK2.EXE
was compressed with the excellent ARJ archival software program. 
When these files are decompressed, which should be done in the
root directory, they create a hierarchy that should look like:
     
     \ANTBYTES           <- Will contain any programs I publish.
        \SCHLOCK         <- Main directory; programs, text files
          \DATA          <- Data files; all end in a *.dat
          \EXAMPLES      <- Executable examples (for Chapter 6)
     
     If School-Lock was received on a distribution diskette,
please type 'install.exe' to install School-Lock, and follow the
instructions presented.
     School-Lock can be found in many places such as: the
Internet, America On Line, and Compuserve.  For the specific site
options see the file sites.nfo
     Please leave all files in their respective directories. 
School-Lock's main file (SCHLOCK.EXE) looks for its data files in
the directories as shown above and if they aren't there it will
lock up the computer.  If you would like to use School-Lock on a
disk, please move (copy) the entire directory structure, or use
the included mksysdsk.bat file.

2.2
  Initialization

     To initialize School-Lock simply change to the
\AntBytes\Schlock directory and run the file SCHLOCK.EXE.  This
will initialize the program and will run it in its default (no
command switches) mode.  The extensive on-line help should be
sufficient explanation of the various setup possibilities.
     School-Lock can be run completely by command line switches,
enabling the operator to accomplish more than is possible by the
default mode.  See Chapter 4 for more information on the command
line switches, or type 'SCHLOCK /?' for help.
     The beginning HotKey is set to '27' (the ESC key), and the
beginning UserID and PassWord are set to '' (the ENTER key).
     NOTE: THE MAXIMUM LENGTH FOR A USERID OR PASSWORD IS 20
CHARACTERS.  ENTERING MORE WILL NOT HARM ANYTHING, BUT IS
USELESS, THE EXTRA CHARACTERS ARE IGNORED.  THE MAXIMUM LENGTH
FOR THE COMMAND INTERPRETER PATH IS 60 CHARACTERS.

CHAPTER 3: BASIC COMPUTER SECURITY

     First, a few words about security on computer systems. 
Computers were originally designed for productivity, not for
security.  The security issue is only a concern because of the
immature nature of many people to prove how destructive they can
be.  Thus, no computer is ever 100% secure.  If someone wants
into the computer system badly enough, they may get in.
     However, having worked with computers and their security
issues for several years, I can say that a system can always be
made more secure.  By following the advice given in this chapter
and using the superior security engine that is presented by
School-Lock it can be guaranteed that the computer system(s) that
the School-Lock package resides on will be repulsive to a tempted
system hacker.

3.1
  BIOS

     Inside every Personal Computer system is a chip and series
of circuits known as the Basic Input Output System (BIOS).  Also
contained inside the computer is the Complementary Metal-Oxide
Semiconductor (CMOS).  These two, working hand-in-hand control
every aspect of the computer system.  Without them DOS and any
other operating system on the computer would be useless.
     The information that these two control include: hard drive
types and sizes, RAM, floppy drives, display types, and IRQ and
COM port information.  The newer BIOS chip sets are also equipped
with Virus Protection.  Some of the most commonly overlooked
security features reside in the CMOS.
     If the CMOS passwords are forgotten, the computer will have
to be taken apart and reconfigured.  However, the good side to
the CMOS protection schemes is that most users can't take apart a
computer to find out how to break in before someone notices.
     In fact, the CMOS has three main security features of
interest to administrators.  The first is the actual CMOS setup
password.  This password is invoked if someone attempts to alter
the CMOS information.  Nothing will get altered unless the
correct password is entered successfully.  Understanding that the
above devices are vital, this is a wise option.
     The second is a power on (boot-up) password.  With this
password set the computer will never go beyond the beginning
initialization session unless a correct password is entered. 
This is usually discouraged in a multi-user environment because
it must be re-entered every time the computer is booted.
     The third and final CMOS security option disables the floppy
drive boot.  By disabling the floppy boot you can be sure that
no-one will bypass the security features already set in place.
     CMOS settings can usually be changed by pressing the <DEL>
or <CTRL> <ALT> <ESC> keys when the system is first turned on.  

     NOTE: Please refer to the motherboard manual for more
information about the CMOS within specific computer systems.

3.2
  DOS

     DOS by itself has very little built-in security unless the
command interpreter is patched; however, for our purposes this
isn't necessary.  The first and foremost security measure is to
add the following lines to the top of the config.sys file (type
EDIT \CONFIG.SYS to open and edit the file):
                             SWITCHES = /F /N
                                BREAK = OFF
     These lines will disable the ability to unload (break out
of) DOS by holding and pressing shift, F5, or F8.  The break line
will disable the Alt-003, Ctrl-Brk and Ctrl-C sequence checking
during most DOS operations.  However, this will not keep someone
from exiting the autoexec.bat file before it is finished.  
     There are two ways to keep the autoexec.bat file safe from
people exiting it.  The first involves another file in the
School-Lock package, NOKYBRD.SYS, that was originally coded by PC
Magazine.  This file is placed in the CONFIG.SYS file, like:
                 DEVICE = C:\ANTBYTES\SCHLOCK\NOKYBRD.SYS
     This line disables the keyboard, yet doesn't take up any
memory.  NOKYBRD.SYS has a complimentary file, named KYBRD.COM. 
If placed in the autoexec.bat or winstart.bat file, KYBRD.COM
will re-enable the keyboard.
     The second way to keep someone from exiting the autoexec.bat
involves setting the autoexec.bat to be a dumb file and, using
School-Lock, lock the real autoexec.bat file.
     A final precaution that can come in handy is to delete all
un-wanted, and un-needed DOS files.  Such files include:
edit.com, format.com, sys.com, attrib.exe, debug.exe, fdisk.exe,
move.exe, dosshell, deltree.exe, and restore.exe.  These files
should instead be placed on a central diskette where they can be
called as needed.
     Before deleting any files make sure that the system is set
up and running correctly.  Also, if you don't plan on making any
immediate changes to your config.sys or autoexec.bat files I
STRONGLY recommend that they be made read only.  This can be done
by typing:
                           ATTRIB +R CONFIG.SYS
                                    AND
                          ATTRIB +R AUTOEXEC.BAT
     To remove this (in order to edit the files, or delete them)
type the above commands, using a '-' symbol instead of a '+'.

3.3
  Windows

     Unlike DOS Windows allows for enhanced security.  However,
in order to enable this security some key files should first be
removed and placed on a central diskette for later use by the
System Administrator.  These files are: control.exe, winfile.exe,
write.exe, notepad.exe, and sysedit.exe. AntBytes must stress
that DELETING THE ICONS IS NOT ENOUGH.  When the icon is removed
the program still remains, it is just not readily visible through
Windows.
     To gain in-depth security with Windows extreme control will
need to be placed in one of the basic Windows startup files. 
This file, PROGMAN.INI, controls how the user interface, all of
the icons that can be seen, are displayed.  It also controls
which menus are shown and what is or isn't grayed out.  I will
attempt to explain how and what these commands are capable of.
     If the command:
                         EDIT \WINDOWS\PROGMAN.INI
is entered, a screen showing something similar to the following
will be seen:
          [HEADER]
          something=something_else
          ....
          ....
          [ANOTHERHEADER]
          something_again=another_something
          ....
          ....
The [] sections contain headers, and the values under them are
just that, values and commands.  So, to begin, a section called
[Restrictions] will need to be found or created.  If it cannot be
found add a new line containing the text:
                              [Restrictions]
on it at the end of the file.  By itself this header does
nothing, it must have commands within it.  Following is a summary
of all of the commands that AntBytes knows of that can be placed
under the [Restrictions] header.  Please notify AntBytes if some
are missing or incorrectly stated so they may be changed in
future versions.
     An example [Restrictions] section may look like:
                              [Restrictions]
                               NoFileMenu=1
                                EditLevel=4
                             NoSaveSettings=1

     The commands that can be placed under the [Restrictions] are
as follows:

** NoClose=1   
     This string disables exiting from Windows by greying out the
"Exit Windows", and "Close" box as well as the HotKey Alt-F4.
** NoRun=1
     This string disables the "Run" command, disallowing programs
not specified to be run.
** EditLevel=4
     This command (which can be altered by using 1, 2, 3, or 4)
grays out "New", "Move", "Copy", "Delete", and "Properties". 
This string also keeps users from dragging and dropping icons,
and rearranging groups.
** NoFileMenu=1
     This string will completely remove the "File" menu, and will
also disable any complementary commands in the '-' menu,
including the "Close" commands and HotKeys.
** NoSaveSettings=1
     This keeps users from redefining the desktop, by making sure
that it is NOT saved on exit.

     When School-Lock is used from Windows it can be easily
bypassed.  The Ctr-Alt-Del keys in Windows will close School-
Lock, Alt-Enter confines School-Lock to a small window, and the
Alt-Tab keys switch to a task other than School-Lock.  There are
several solutions to this problem.  However, many are untested,
so they may prove futile.
     The first option is to create a batch file called
winstart.bat and place it in the Windows directory.  Winstart.bat
is automatically run when Windows starts up.  In this batch file
place the commands:
                       C:\ANTBYTES\SCHLOCK\KYBRD.COM
                   C:\ANTBYTES\SCHLOCK\SCHLOCK.EXE /ACT
     This will turn on the keyboard and run School-Lock.  Another
option would be to place School-Lock as an icon in the Startup
group of Windows.  Also, School-Lock (with the /ACT switch) could
be placed in the win.ini file on the line that reads: 
          run=
     The final way is probably the most secure of these choices. 
Place the command:
       C:\ANTBYTES\SCHLOCK\SCHLOCK.EXE /EXEC C:\WINDOWS\PROGMAN.EXE
     In the file system.ini where it reads:
          shell=
     So the command would look like:
shell=C:\ANTBYTES\SCHLOCK\SCHLOCK /EXEC C:\WINDOWS\PROGMAN.EXE
     Again, School-Lock was created mainly for DOS security, so
Windows support and compatibility are not guaranteed.  Make sure
to backup any files before they are altered.

CHAPTER 4: COMMAND LINE SWITCHES

4.1
  An Overview Of Switches

     A command line switch is anything that succeeds the name of
the program that is being executed.  For instance, typing DIR /P
shows directories and files in the current directory, page by
page; the /P is a switch.  School-Lock also has some command line
switches that enable it to do more than what can be done through
the default (menu) mode.  School-Lock's command line take this
format:
                        SCHLOCK [/SWITCH] [PROGRAM]
     Where:
          SCHLOCK -> Is the name of the program
          /SWITCH -> Is the switch that is being called
          PROGRAM -> Program to be locked; full path (Optional)

     When the switches are entered for School-Lock they must all
be in uppercase or lowercase.  For instance, School-Lock would
recognize /LOG or /log but not /Log or /loG.  There must also be
a space between the program name, switch, and program to be
locked.
     Please note: Do not include the brackets ([]) when the
switch is typed in at the command line.  Also, when a program is
being locked the full path AND extension MUST be typed.
4.2
  Help Switches

     School-Lock recognizes three help switches.  These switches
are: /?, -?, and ?.  School-Lock will also display the help
information if an invalid switch is used.
     To see the help type:
                                SCHLOCK /?

4.3
  /SETT

     To directly change the system configuration use the /SETT
switch.  It is invoked by typing:
                               SCHLOCK /SETT
     School-Lock will then ask for the current UserID and
PassWord, and if correct will start up a multilayered menu
system.  To choose a menu move the cursor and then press enter
when the correct one is highlighted.  Online help is provided.

4.4
  /ACT

     The /ACT switch creates a standard password protection
screen.  After the HotKey is entered, and then the correct UserID
and PassWord the program will quit.  However, if there are three
invalid tries the computer will either lock up or reboot.  To get
to the active screen type:
                               SCHLOCK /ACT
     First press the correct HotKey, then the UserID and finally
the PassWord.  This switch is most useful when used at the TOP of
the autoexec.bat file.

4.5
  /READ and /WRITE

     The /READ and /WRITE switches are complimentary switches
that read and write CMOS settings. The /READ switch is executed
by:
                               SCHLOCK /READ
     This switch will read the current CMOS information and place
it in the \AntBytes\Schlock\Data\CMOS.dat file.  The /WRITE
switch is executed by:
                              SCHLOCK /WRITE
     This command will reload saved information from the
\AntBytes\Schlock\Data\CMOS.dat file.  However, the /WRITE switch
is only available to registered users.
     It would be wise to make a bootdisk, use School-Lock to make
a /READ, and then copy the entire \AntBytes directory hierarchy
to the boot disk.  As an alternative, the example file
MKSYSDSK.BAT in the \AntBytes\Schlock\Examples directory could be
used.  This file stores the CMOS information, makes a system
(boot) disk, and transfers necessary files.

4.6
  /BOOT and /LOCK

     These switches can be used instead of external programs.  To
execute a reboot type:
                               SCHLOCK /BOOT
     This reboot first flushes the disk caches, and then executes
a reboot.  It is a very safe command.  To lock up the computer,
type:
                               SCHLOCK /LOCK
     This command will lock the computer, completely.  This
command first disables the keyboard, then the hard-drive by
rerouting their interrupt vector tables.  I do not suggest using
this if the disk is compressed using software such as Stacker,
DoubleSpace, or DriveSpace.

4.7
  /LOG and /DISPLAY

     These commands are used to make silent (if registered) logs
and to display any logs that have been made.  The /DISPLAY
command can only be used by registered users of School-Lock.  To
execute a silent log type:
                               SCHLOCK /LOG
     And to see the log file type:
                             SCHLOCK /DISPLAY
4.8
  /BAT and /EXEC

     These commands are the heart and soul of School-Lock.  These
two commands distinguish School-Lock from other security packages
on the market.  
     The /BAT and /EXEC commands run a specified program, and
when that program is exited the computer acts like it was run
with the /ACT switch.  To use the /BAT switch the command
interpreter MUST be known to School-Lock.  To register a command
interpreter, change its setting in School-Lock with the /SETT
switch.  To lock a batch file (*.BAT) using /BAT type:
                       SCHLOCK /BAT X:\DIRS\PROG.EXT
  The FULL path must be included, as well as the extension. 
     To do an Executable file lock (*.COM, *.EXE) type:
                      SCHLOCK /EXEC X:\DIRS\PROG.EXT
  X stands for the drive it is located on, and the DIRS is the
directory that the file resides in.  The PROG.EXT is the program,
with a valid extension.

CHAPTER 5: PRACTICAL USE OF SCHOOL-LOCK

5.1
  Home Use

     To use the School-Lock package at home, I suggest that a
custom batch file be created, with which to run the programs of
choice from, in a menu-type style.  To see how to make a menu
batch file see Chapter 6.  Then alter the config.sys file and add
the following lines to the top:
                             SWITCHES = /F /N
                                BREAK = OFF
                 DEVICE = C:\ANTBYTES\SCHLOCK\NOKYBRD.SYS
     The above lines turn OFF the shift, F5, and F8 keys during
DOS's boot up.  They also turn extra break checking OFF, and then
turn OFF the keyboard.  Then, add the following lines to the end
of the autoexec.bat file:
                       C:\ANTBYTES\SCHLOCK\KYBRD.COM
           C:\ANTBYTES\SCHLOCK\SCHLOCK.EXE /BAT C:\PATH\FILE.BAT
     The above lines turn ON the keyboard, and then locks another
file, usually the menu file.  Where:
          C:\       <- The drive the files is one
          PATH\     <- The programs directory and subdirectory
          FILE.BAT  <- File with extension
     However, the choice may be made that users should not be
able to get into the computer at all.  In this case, add the
following lines to the top of the autoexec.bat:
                       C:\ANTBYTES\SCHLOCK\KYBRD.COM
                   C:\ANTBYTES\SCHLOCK\SCHLOCK.EXE /ACT     
     These lines turn on the keyboard and then go into active
mode.

5.2
  School Use

     Schools generally have a different problem than that of the
average home user (who usually don't need School-Lock).  To a
school administrator, a computer mess-up or two can set a class
back a few weeks.
     In part that is why this package was created, and because of
this, I strongly recommend that schools take advantage of the
FULL computer security options that are built into the computer
hardware as well as the many tactics School-Lock employs.  This
would include moving all unwanted, un-needed, and potentially
hazardous files to a diskette, locking programs on startup, using
a standard CMOS setup password, and possibly a CMOS boot-up
password.
     For more information on locking the various types of
programs see Chapter 7.  For more information on security issues
see Chapter 3.
     Following is an explanation of how the School-Lock package
can be implemented in a scholastic environment.

     An example config.sys would look like the file below, and
should include any CD-ROM or sound card drivers needed.  Please
note: the ';' and everything after it is a comment, and should
not be placed in the file.  It is here for example usage ONLY.

SWITCHES = /F /N    ; Turn off shift, F5, F8 temporarily
BREAK = OFF         ; Turn off extended break checks
DEVICE = C:\ANTBYTES\SCHLOCK\NOKYBRD.SYS     ; turn off keyboard
DEVICE = C:\DOS\HIMEM.SYS          ; Memory manager for Windows
DEVICE = C:\DOS\EMM386.EXE         ; DOS memory manager
DOS = UMB, HIGH          ; Load DOS into high memory, create UMBs
FILES = 50               ; Maximum number of files open at once
BUFFERS = 10,0           ; File buffers for extra speed
STACKS = 9,256           ; Data stacks for hardware
SHELL = C:\DOS\COMMAND.COM         ; Command Interpreter

     An example autoexec.bat file, if the school is locking a
menu program, would look like the following.  Again, the ';' and
everything successive to it is a comment and should not be placed
in the file.  However, the ';'s in the PATH statement should
remain in place; it tells DOS where to find its files at.

@ECHO OFF      ; Turn off normal screen output
LH C:\MOUSE\MOUSE        ; Load the mouse into high memory
SET PATH = C:\;C:\DOS;C:\WINDOWS;C:\ANTBYTES\SCHLOCK;
SCHLOCK /BAT C:\ANTBYTES\SCHLOCK\MENU.BAT    ; Locks a file

     Notice that the keyboard has not yet been enabled.  The
keyboard becomes enabled in the menu.bat file; making sure that
School-Lock has control before it releases the keyboard.  The
menu program is as follows.  Again, ignore the ';'s and
everything after them, they are only comments for the readers of
this file.  Following is an example menu.bat file.

@ECHO OFF                               ; Turn off screen output
 C:\ANTBYTES\SCHLOCK\KYBRD.COM          ; Turn Keyboard ON
:TOP                                    ; A label for jumping
 CLS                                    ; Clear Screen
 ECHO  Created by AntBytes              ; Show the string
 ECHO.                                  ; Show a blank line       
 ECHO.                                  ; Show a blank line       
 ECHO.                                  ; Show a blank line       
 ECHO.                                  ; Show a blank line
 ECHO  A. DOS                           ; Show a menu item
 ECHO  B. Windows                       ; Show another item
 ECHO  Q. Quit                          ; Show a quit option
 ECHO.
 CHOICE /C:ABQ /N             ; Wait for choices, don't show them
  IF ERRORLEVEL 3 GOTO END    ; If 3rd key pressed goto :END
  IF ERRORLEVEL 2 GOTO WIN    ; If 2nd key goto :WIN label
  IF ERRORLEVEL 1 GOTO DOS    ; If 1st key goto :DOS label
 GOTO TOP                     ; Did the user press Ctrl-Brk?

:DOS                                    ; Label
 CLS                                    ; Clear Screen
 CD\DOS                                 ; Changes Directories
 COMMAND.COM                            ; Call a program
GOTO TOP                 ; Goto :TOP label, do menu

:WIN                                    ; Label
 CLS                                    ; Clear Screen
 CD\WINDOWS                             ; Change Directories
 C:\ANTBYTES\SCHLOCK\SCHLOCK /ACT       ; Prompt for a PassWord
 WIN.COM                 ; User entered password, go to Windows
GOTO TOP                 ; Back to Main Menu

:END                     ; Final Label, will prompt for password

     That's all there is to making a menu system to control all
the programs on a given hard drive.  To add more, simply add
another shown item, a letter to the choice command, another
errorlevel command, and a label for the program.
     Again, this is only one way that School-Lock could be
implemented.  The choice that a System Administrator takes could
be very different, and hopefully very intuitive.

CHAPTER 6: A DEMONSTRATION

     The files that come as examples are files that AntBytes
created.  Some of these files are simply in the School-Lock
package because of their ability to demonstrate the uses School-
Lock has.  Other files in these directories are very helpful. 
For instance, the file MKSYSDSK.BAT is a handy program that will
save CMOS information, make a boot disk, and then transfer all
School-Lock files (including the examples and CMOS information)
to the diskette.

6.1
  Batch Files

     In the \AntBytes\Schlock\Examples directory are some files
ending with a *.BAT extension.  These files are batch files, and
were created by AntBytes.  To view these files type:
                           TYPE FILE.BAT | MORE
     To lock these batch files type:
                           SCHLOCK /BAT FILE.BAT
     Where FILE.BAT is an existing file with a valid extension.

6.2
  Compiled Files

     Also included in the \AntBytes\Schlock\Examples directory
are compiled files.  These files end in *.COM and *.EXE
extensions.  Some of these files were compiled by AntBytes using
Pascal and C compilers.  Others were originally batch files.  To
lock a compiled file, type:
                          SCHLOCK /EXEC FILE.EXT
     Where FILE.EXT is an existing file with a valid extension.

CHAPTER 7: MISC.

7.1
  Acknowledgments

     A project like this could not occur without the help and
input of many people.  AntBytes would like to thank these people
and organizations, in no particular order:

     My Family
     Jim Case
     Jason Schloer
     The Swag Archival Group
     The Faculty Of North Stafford High School
     Len Peruski
     Daniel Buckley

7.2
  Compatibility

     Compatibility with School-Lock is not assured.  In fact,
many of the examples may not run on systems not using DOS 6. 
AntBytes has attempted to make sure that the main features of
School-Lock will run on many older systems.  However, AntBytes
suggests the following system as a bare minimum:

          286 Processor
          CGA Video Card / Monitor
          AT Extended Keyboard
          640K RAM
          20 MEG HDD
          DOS 6
     
     The School-Lock package has been tested on the following
system setups, and runs flawlessly:

          486 DX/33
          SVGA Card and Monitor
          Extended Keyboard
          4 MEG RAM
          340 MEG HDD, 1.2 and 1.44 FDD
          Windows 3.11 / DOS 6.2

          486 DX2/66
          SVGA Card and Monitor
          Extended Keyboard
          16 MEG RAM
          340 MEG HDD, 1.2 and 1.44 FDD, 2X CD-ROM
          Windows 3.11 / DOS 6.2 / Novell Netware 3.x, 4.1

7.3
  Past And Future

     Following is a listing of how School-Lock has come along,
with a few abbreviations.  The 'V' stands for Version, and the
'B' stands for Beta.  Beta's were not released to the public.

V B.02; July 1995:
     Uses a built-in PassWord to run a specified executable.

V B.05; August 1995:
     Customizable UserID and PassWord to run executables; No
encryption.

V B.07; September 1995:
     Customizable UserID and PassWord's to run executables and
batch files; relying on environmental variables;  No encryption.

V 1.00; October 1995:
     Customizable UserID and PassWord's; runs executables and
batch files; depends on environmental variables; simple character
encryption; basic keyboard locking; Documents in ASCII

V B1.02; January 1996:
     HotKey, UserID, and PassWord protection; .exe, .com, and
.bat execution; Beeping; Reboot or Secure locking

V 2.00; March 1996:
     HotKey, UserID, and PassWord protection; .exe, .com, and
.bat execution; Beeping; Reboot or Secure locking; GOOD String
encryption; Uses NO environmental variables; Logging; External
Files; Documents in HTML and ASCII; Files are now ReadOnly

     The future is a muddy picture for School-Lock, and will
mainly be determined by the continued feedback received from the
users of School-Lock.  However, there are some features that
AntBytes would like to add:

          NO DOS Shelling
          Simplification of Windows Security
          A Windows / Windows '95 Port
          No Screen Saver
          No Floppy Booting

     These are only a few possibilities, and suggestions are
welcome.  For contact information see the file register.txt

INDEX OF ERRORS

     School-Lock has extensive error checking, and is equipped
with a superior help engine.  If School-Lock encounters an error,
the user will be notified.  Errors that School-Lock detects range
from Bad File to Not Enough Memory, all of which prove fatal.  If
an error is encountered, the error screen will be shown as well
as an explanation and possible causes.  The computer is then
locked up.
     When a computer is locked because of a fatal (or otherwise)
error, it is locked as if the user typed:
                               SCHLOCK /LOCK
     This ensures that the computer system remains whole while
the problem is remedied.
