The present software delivery system includes a computer system and a
CD-ROM. The computer system includes a central processing unit
communicably coupled to a CD-ROM drive, a hard drive, and a non-volatile
memory. The CD-ROM contains a control module and a plurality of software
modules. Each of the software modules contains one or more software
products which are the software to be delivered to the user of the
computer system. Each of the software modules is assigned a unique
identifier (ID) such as an identification number or code. In the
non-volatile memory, addresses have been designated to contain an
encrypted code key which comprises a list of identification numbers
corresponding to the identification numbers of the software modules.