Professional Documents
Culture Documents
Module 1 Lesson 3
Module 1 Lesson 3
3
Information in this document is subject to change without notice. The names of companies,
products, people, characters, and/or data mentioned herein are fictitious and are in no way intended
to represent any real individual, company, product, or event, unless otherwise noted. Complying
with all applicable copyright laws is the responsibility of the user. No part of this document may
be reproduced or transmitted in any form or by any means, electronic or mechanical, for any
purpose, without the express written permission of Microsoft Corporation. If, however, your only
means of access is electronic, permission to print one copy is hereby granted.
Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual
property rights covering subject matter in this document. Except as expressly provided in any
written license agreement from Microsoft, the furnishing of this document does not give you any
license to these patents, trademarks, copyrights, or other intellectual property.
The names of actual companies and products mentioned herein may be the trademarks of their
respective owners.
Module 1.3 61
Install Now
Accepting the agreement and clicking, displays the Ready To Install screen.
Here you are given two options. They are “Install Now” and “Customize.” The
first option installs Microsoft Project 2000 in the default location with the
default options. The default location is “C:\Program Files\Microsoft Office\”. If
Office 2000 or one of its applications is installed on the system, the default
folder is the folder in which Office 2000 is installed.
Figure 3 - Ready to Install
By choosing Install Now, you not only accept the default installation location,
you also accept for only the default features to be installed in their default state.
For Microsoft Project 2000, the following features are installed as noted when
Install Now is chosen.
Feature Default Install State
Microsoft Project for Windows Run From My Computer
Add-ins: Adjust Dates Run From My Computer
Add-ins: Analyze Timescaled Data Run From My Computer
Add-ins: Compare Projects Run From My Computer
Add-ins: Euro Currency Run From My Computer
Add-ins: DB Conversion Run From My Computer
Add-ins: PERT Analysis Run From My Computer
Help Run From My Computer
Microsoft Project Templates Installed On First UseRun From My
Computer
Digital Signature for Microsoft® Installed On First Use
Visual Basic® for Applications (VBA)
projects
Core Support Files Run From My Computer
Extended Support Files Not Available
Module 1.3 65
Customize
If you choose Customize instead of Install Now, you are given the options to
make modifications to the installation location and the state in which certain
features are installed. First you are taken to the installation location screen.
Here you can see how much space is available on each system drive. You are
also given the opportunity to change the installation folder.
Note
After selecting an installation location, you are taken to one of two screens,
depending on your system configuration. If you do not have IE 5 or higher
installed on you system, you are taken to the Updating Windows screen. Here
you are given the opportunity to install Internet Explorer 5 in either a standard
or minimal configuration. You may also choose not to install Internet
Explorer 5 at all.
If you already have Internet Explorer 5 or later installed on your system, (or
once Internet Explorer 5 installation has been completed) you are taken to the
Selecting Features screen. Here you can change the installation state of any of
the features that ship with Microsoft Project 2000.
1. Run SETUP.EXE from the install location given you by the instructor.
2. Enter a user name, organization name, and your CD key as required. Click
Next.
3. Agree to the license agreement and click next
4. Click Customize.
5. Install Project to the “C:\Program Files\Project 2000” directory. Click next.
6. Click Microsoft Project and choose Run all from My Computer.
7. Click Install Now.
Module 1.3 69
Rollback Script
Window Installer accomplishes rollback by creating a rollback script. A
rollback script is a file containing a linear sequence of operations to perform
such as file and registry updates, configuration information updates, user
interface notifications, and state information for other operations. Each
operation recorded in the rollback script is a direct response of an operation in
the installation script. See the table below for some examples of what would go
into a rollback script.
During the Install Process Creating the Rollback Script
Write a registry key. If the registry key did not previously
exist, then describe how to remove the
registry key. If the key already existed,
then back up the existing registry key
so it can be restored.
Install a file. If a file did not previously exist in the
folder, then describe how to remove the
file. If the file already existed, then
back up the existing file so it can be
restored.
Create a shortcut to the file. If the shortcut did not previously exist
in the folder, then describe how to
remove the shortcut. If the shortcut
already existed, then back up the
existing shortcut so it can be restored.
Module 1.3 71
Config.Msi folders
The Config.Msi folders are created when MSIEXEC.EXE starts copying files
from the install point.
Rollback Scripts
The rollback script (.RBS) file is always stored in the CONFIG.MSI folder on
the drive where the operating system is installed. The .RBF files are stored in
the CONFIG.MSI folder located on the drive where the application that is being
backed up currently resides. This is done so that there is no crossing of drives
when backing up the application files. Files with a RBS file extension are
rollback script files and files with a RBF file extension are backups of existing
files. All rollback files and the CONFIG.MSI folder are deleted when the
installation completes successfully.
For more information on disabling rollbacks, see the following Knowledge Base
article: Q227181 "How to Manage Windows Installer Local Policies".
Use Logging to Troubleshoot Installation Issues
For more information on which switches to use with logging, see the
Microsoft Project 2000 Resource Kit.
Module 1.3 73
Component Detection
A large portion of logic used in the Window Installer hinges on component
detection. Component detection is key in preventing DLL conflicts that often
plague applications that share common files. Whereas ACME used a procedural
script to install a disjointed collection of files, registry keys and other resources,
the Window Installer views all applications as three logical building blocks:
Components, Features, and Products. You can use the Window Installer to
detect missing components or files and then to reinstall features containing the
missing components. Because the installer installs features, and not
components, it must first resolve to which component a missing file belongs
and then install the feature containing that component.
Before addressing “Component Detection”, we need to look at these basic
building blocks of Window Installer.
The smallest installation unit for Window Installer is the component. A
component can be a collection of files, registry keys, shortcuts or INI file
entries. Components are commonly hidden from the user. Whenever a user
selects some feature for installation, the installer determines which components
are required. Only a single instance of any component is ever installed and so
several features may end up sharing some components. A component does not
necessarily have to contain any files. When a component contains one or more
files, all files are installed into the same folder. This is a rule of Window
Installer.
The “Golden Rule” of installer components: No single file (as defined by filename
and install location), registry entry, shortcut or other resource should ever be shipped
as a member of multiple installer components. This rule applies across products,
product versions, and companies.
When the keypath resource is missing, the Window Installer treats the
component as broken and triggers a reinstall of the missing component.
Module 1.3 75
Registry Keys
The installer then looks in the following registry hives to determine whether
Project is installed per-user or per-computer, and whether it is a managed
application. A managed application is an application assigned on Microsoft®
Windows® 2000 by an administrator via the App Deployment service. Per-User
means that each user on the machine has a profile enabled. For Microsoft®
Windows® 95/Microsoft® Windows® 98, user profiles must be turned on in
order to use per-user. For Microsoft® Windows NT® 4.0 and Windows 2000,
user profiles are turned on by default. Per-computer means that the applications
are the same for all users and no profiles are enabled.
Per-user, non-managed (Windows 95/Windows 98 and Windows NT 4.0):
Hkey_Current_User\Software\Microsoft\Installer\Products\
COMPRESSED_PRODUCT_GUID
For example,
“n;1;\\united\dartest\public\”
When the package exists at the LastUsedSource, installer launches to install all
the components in the feature, from the list of SQUIDs in:
Hkey_Local_Machine\Sofware\Microsoft\Windows\CurrentVersion\Installer\Featur
es\COMP_PRODUCT_GUID
Feature_name = SQUID1SQUID2SQUIDn
When the package does not exist at the install point in LastUsedSource, installer
checks the \Sourcelist\[Net, URL, Media] sourcelist keys for alternate sources.
The sourcelist is checked in the order of Net, Media, URL by default – but setting
the SearchOrder System Policy can change this.
When a correct MSI package file (correct Filename and Product code) is found
at one of the sources, the installer proceeds to install the components. If a valid
source is not found, the installer pops up the Network Resource Dialog box to
give the user the option of specifying another valid source. However, if the
DisableBrowse system policy is set, the browse button is not displayed to the
user.
Once a source is selected or typed into the combo box, the source is validated.
If valid, the installer proceeds to install the above. Otherwise, the installer
brings the dialog box back up again and this continues until a valid source is
found or the user cancels.
Source lists are explained in more detail in the next lesson.
Removing Components
Each installed component is registered in Hkey_Local_Machine with a list of
products that are "clients" of that component. If four different products (as
defined by the installer package code) install the same component (as defined
by the installers component code), then there will be four products in the client
list - in essence, a reference count of 4 on that component.
When the installer removes a component, it first checks the client lists of the
component to make sure that no other installer based products are using that
component. If there is another product in the list, the installer removes the
product code of the product that is removing from the client list, and is done. If
Module 1.3 77
the list is empty except for the product the installer is uninstalling, then it
performs a check of the SharedDLL key. If the installer finds a SharedDLL
count that's higher than is expected, it leaves the entire component behind.
Otherwise it will remove the entire component.
There also may be a registry entry at this location that is all zeros. This is a system
component and is never removed.