Welcome

The information contained in this help file is subject to change without notice. Scalable Software makes no warranty of any kind with regard to this help file, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. Scalable Software shall not be liable for errors contained herein or for incidental or consequential damages in connection with the furnishing, performance, or use of this online help.

Welcome to WinINSTALL MSI Packager Professional 10.1

Scalable's WinINSTALL software has been an industry leader in software distribution and management for over a decade. Our innovative technology, ease-of-use, and responsiveness to the needs of our customers has made us the front-runner in the desktop availability solutions market and the number one choice of network administrators in organizations of every size.

Discover how WinINSTALL can help you to meet all of your network software management needs - quickly, easily, and efficiently. First, check out what's new in this release and then use the brief WinINSTALL Installation Guide and the first section of the WinINSTALL Administrators Guide for quick directions on installing and beginning to use the product. When you're ready, read on in the Administrators Guide for detailed explanations of each feature that WinINSTALL provides - presented in clear, easy-to-understand language and arranged to reflect functional work-flow. Finally, use the practical, concise step-by-step instructions that smoothly walk you through implementing each feature.

Click here to review the conventions used in WinINSTALL online help.

WinINSTALL® Product Family

The WinINSTALL family of products was created for you - the network administrators who must install, manage, and maintain software installation in enterprise networks.

The WinINSTALL family of products includes the following:

WinINSTALL® Lifecycle Management Suite (LMS)

WinINSTALL® Desktop Management Suite (DMS)

WinINSTALL® MSI Packager Professional Edition

Copyright

Copyright © 2009 Scalable Software Inc., Scalable WinINSTALL, WinINSTALL and all other Scalable product names are trademarks or registered trademarks of Scalable Software Inc., in the USA and other countries.

Disclaimer

The information contained in this publication is subject to change without notice. Scalable Software makes no warranty of any kind with regard to this manual, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. Scalable Software shall not be liable for errors contained herein or for incidental or consequential damages in connection with the furnishing, performance, or use of this manual.


What's New

  • Legacy CR is not visible in the User Interface unless you are upgrading an existing installation in which it was used.

  • Legacy CR can be ”r;enabled” or made visible in the User Interface via a registry or file-based switch or setting.

This release introduced complete branding by changing directories and registry from ”r;OnDemand” and ”r;Attachmate” to ”r;Scalable”.

  • Setup programs now use the Scalable folders and registry keys.

  • A new functionality was added to the patches to move the registry data to the new Scalable structure and remove the old structures.

This release dropped support for Windows 95, 98, Me and NT4. In addition, this release does not allow deployment or upgrade on 9x and NT.

This release replaced MSDE with SQL Server 2005 Express Edition.

This release supports WIDeploy SMBIOS ID.

What's New in WinINSTALL 10.1

WinINSTALL v10.1 is a release of WinINSTALL, introducing a number of important new features. Help and documentation have been updated as well. For more information on changes specific to this release, please consult the ReadMe file.

  • Support for Windows Vista and Windows Server 2008

  • PXE Client Reset Support for 64-bit platforms

  • Software Distribution

  • New Patch Management Facility

  • PXE Client Reset Enhancements

  • Legacy Client Reset Depreciation

  • Branding Update

  • Platform Support

  • SQL Server 2005 Express Edition

  • SMBIOS ID Support


Once you have installed the Console and set up your database and shares, you must configure your environment for WinINSTALL. New users and users new to this release should take a few minutes to familiarize themselves with the design and use of the Console. After you have configured your environment, you are ready to build and organize packages - WinINSTALL packages, Windows Installer packages, and merge modules, patch packages, and transforms. Before you proceed, take advantage of the MSI validation and repair utility for individual Windows Installer packages and perform conflict assessments on groups of packages that will be installed together. Users who want to be able to rebuild workstations with WinINSTALL can create a set of templates that will restore operating systems and install optional applications. At this point, you can perform an inventory on the machines in your enterprise to generate detailed asset information that will help you in making your software distribution decisions. You can also organize your machines into user-defined groups to simplify and customize software distribution. Before actually distributing your software, you can replicate packages and templates across your enterprise to optimize the performance of WinINSTALL in your environment. The final step is to distribute your software, a process that is simplified and streamlined by the earlier steps you took in the work-flow. WinINSTALL provides a variety of logging mechanisms and levels to help you with trouble-shooting and comes with a comprehensive set of reports as well. The WinINSTALL Reference Library includes detailed information about the WinINSTALL program files and share structure, database schema, registry changes made by WinINSTALL packages, installer parameters and switches, logging types and levels, ICE messages, and WinINSTALL error messages.

WinINSTALL Workflow

The work-flow in WinINSTALL follows a logical, real-world sequence, enabling you to carry out a variety of tasks on managed machines .

What do you want to do?

Learn how to use the Console.

Build packages.

Organize packages.

Edit packages.

Validate and repair packages.

Pinpoint and resolve potential conflicts before I install packages.

Perform diagnostics and resolve problems.

Use the WinINSTALL Reference Library.

Tip: Use the recommended work-flow to get the maximum benefit from this powerful product.


Console Design and Navigation

The WinINSTALL Console is the graphical user interface (GUI) used to administer the entire WinINSTALL environment.

The data displayed in the console is the data in the database selected in the Default Settings Wizard or on the Console Options dialog. If you change from one database to another, you change the data that you see in the Console.

Once you understand the console layout, you can customize it and add security to it.

The minimum video resolution for the WinINSTALL Console is 1024 x 768.

What do you want to do?

Understand the layout of the Console.

Customize the Console.

Add security to the Console.

Tip: 1024x768 is the minimum video resolution for the WinINSTALL Console.


The tree pane is the top left pane of the Console. The nodes in the tree pane allow you to access the major functional areas of the product. Clicking a node can reveal sub-nodes that represent nested functionality within that area. The node selected in the tree pane determines the appearance of the data pane and, for some nodes, the appearance of the list pane as well.

The list pane is the bottom left pane of the Console. Context-sensitive information displays in this pane when certain sub-nodes under the Software Distribution, Machines, Client Reset, or Replication nodes are selected in the tree pane. The entry selected in the list pane then determines the appearance of the data pane.

The data pane is the right pane of the Console. Detailed context-sensitive information displays in a tabbed format in this pane. The entry selected in either the tree pane or the combined entries selected in the tree pane and the list pane determine the appearance of the data pane. From this pane, you view and edit information.

The Shortcuts Bar displays on the far left side of the Console. With a simple menu click, you can hide this bar or make it visible again. You can easily customize this bar to reflect the needs of your environment.

At the top of the Console is a context-sensitive menubar and toolbar. The menu categories, menu items, and toolbar icons change depending on the selection made in the tree pane of the console.

Console Layout

The Console is divided into three panes - tree pane, list pane, and data pane - with a shortcut bar on the far left and a context-sensitive menubar and toolbar at the top.

The Console title bar displays the WinINSTALL share to which the Console is currently connected.

What do you want to do?

Learn how to use the tree pane.

Learn how to use the list pane.

Learn how to use the data pane.

Learn how to use the shortcuts bar.

Learn how to use the menubar and toolbar.


Tree Pane

The tree pane is the top left pane in the console. The node that is selected in the tree pane determines the categories that display in the list pane (below the tree pane) and the context sensitive information that displays in the data pane (on the right of the tree pane). Navigating the tree pane is similar to navigating Microsoft's Windows™ Explorer. To expand a node, click the plus sign beside the node. To collapse an expanded node, click the minus sign beside the node.

The top-level nodes in the tree pane represent major functional areas of the product. Clicking the sub-nodes below reveal nested functionality within that area. For example, under the Software Distribution node, lists can be expanded to reveal packages and nested child lists, packages can be expanded to reveal the features they contain, and features can be expanded to reveal their components or sub-features.


List Pane

The list pane is the bottom left pane of the Console. Categories of information display in this pane when certain sub-nodes are selected in the tree pane. Each category in the list pane causes context-sensitive detailed information to display on the right side of the screen, in the data pane.


Data Pane

Highlight the Software Distribution node in the tree pane.

Highlight the Software Distribution Lists node in the tree pane.

Highlight a specific software distribution list in the tree pane.

View or modify a software distribution list.

Highlight a specific package in the tree pane.

View or modify a Windows Installer (MSI) package, feature, or component.

View or modify a WinINSTALL (NAI) package.

Highlight the Software Distribution node in the tree pane.

Highlight the Software Distribution Lists node in the tree pane.

Highlight a specific software distribution list in the tree pane.

View or modify a software distribution list.

Highlight a specific package in the tree pane.

View or modify a Windows Installer (MSI) package, feature, or component.

View or modify a WinINSTALL (NAI) package.

Highlight the Software Distribution node in the tree pane.

Highlight the Software Distribution Lists node in the tree pane.

Highlight a specific software distribution list in the tree pane.

View or modify a software distribution list.

Highlight a specific package in the tree pane.

View or modify a Windows Installer (MSI) package, feature, or component.

View or modify a WinINSTALL (NAI) package.

Highlight the Reports node in the tree pane.

Highlight a report category in the tree pane.

Run, create or modify a report.

Data Pane

The data pane is the right pane of the Console. Detailed context-sensitive information displays in a tabbed format, with the appearance and content determined by the node that is selected in the tree pane and, in some cases, the category that is selected in the list pane as well. In the data pane, you can view and modify detailed information about the selected node or sub-node.

What do you want to do?

View, modify or create software distribution packages or lists.

View, modify or create reports.

View the Console Log.

View, modify or create conflict assessments.


Menu Structure

WinINSTALL Menu Structure

The menu options displayed on the menu bar are context-sensitive, based on what is selected in the tree, list, and data panes of the Console. You can access many of the same menu options by right-clicking the appropriate node in the tree pane, while others are accessible by clicking a button in the data pane.

The node that is selected in the tree pane determines the categories that display in the list pane and the context sensitive information that displays in the data pane. Navigating the tree pane is similar to navigating Microsoft's Windows™ Explorer. To expand a node, click the plus sign beside the node. To collapse an expanded node, click the minus sign beside the node.


Shortcuts Bar

Add a new shortcut bar ...

Remove an existing shortcut bar...

Move an existing shortcut bar ...

Edit the name of a shortcut bar ...

Rename a shortcut on a shortcut bar ...

Delete a shortcut from a shortcut bar ...

1. Right-click in the Shortcuts Bar area.

2. Select Add Bars.

3. The Add Shortcut Bars dialog displays.

4. Enter the name of the new shortcuts bar and click Add.

5. The name of the new shortcut bar now displays at the top of the Shortcuts Bar area.

1. Right-click in the Shortcuts Bar area.

2. Select Remove Bars.

3. The Remove Shortcut Bars dialog displays.

4. From the drop-down list, select the shortcut bar that you want to remove and click Remove.

5. The name of the deleted shortcut bar no longer displays at the top or bottom of the Shortcuts Bar area.

1. Right-click in the Shortcuts Bar area.

2. Select Move Bars.

3. The Move Shortcut Bars dialog displays.

4. From the drop-down list, select the shortcut bar that you want to move and click Move.

5. The name of the shortcut bar moves to the bottom of the list at the top of the Shortcuts Bar area and the shortcut bar opens.

1. Right-click in the Shortcuts Bar area.

2. Select Edit Bar Names.

3. The Edit Shortcut Bar Names dialog displays.

4. From the drop-down list, select the shortcut bar that you want to rename and click Rename.

5. The shortcut bar now displays with its new name on the Shortcuts Bar area.

1. Right-click a shortcut icon or name on a shortcut bar.

2. Select Edit Shortcut Name.

3. Edit the shortcut name.

4. Press Enter.

5. The shortcut now displays with the modified name.

1. Right-click a shortcut icon or name on a shortcut bar.

2. Select Delete Shortcut.

3. The shortcut icon disappears from the shortcut bar.

1. Open the View menu at the top of the Console.

2. Select Bars.

3. Select Shortcut. (It will no longer be checked.)

4. The Shortcuts Bar no longer displays in the console.

1. Open the View menu at the top of the Console.

2. Select Bars.

3. Select Shortcut. (It will now be checked.)

4. The Shortcuts Bar displays on the Console.

Shortcuts Bar

The shortcuts bar displays on the far left side of the console. The shortcuts bar is convenient for accessing items or screens that you use most frequently or for items which appear at the bottom of long lists or hierarchies. You can customize this bar to reflect the needs of your environment. You can choose to hide this bar or keep it visible.

What do you want to do?

Customize the shortcuts bar.

Hide the shortcuts bar.

Make the shortcuts bar visible.

Tip: Just drag and drop items from any major area of the Console to the shortcuts bar. For example, you can bookmark specific tabbed screens, field names, and group box names.


Console Customization

1. Click View on the menubar.

2. Choose Startup at Last Location. (It will now be checked.)

1. Click View on the menubar.

2. Choose Bars.

3. Click Shortcuts Bar.

  • If it is checked, the shortcuts bar will be visible.

  • If it is unchecked, the shortcuts bar will be hidden.

1. Click View on the menubar.

2. Choose Bars.

3. Click Tool Bar.

  • If it is checked, the toolbar will be visible.

  • If it is unchecked, the toolbar will be hidden.

1. Click View on the menubar.

2. Choose Bars.

3. Click Status Bar.

  • If it is checked, the status bar will be visible.

  • If it is unchecked, the status bar will be hidden.

Console Customization

You can customize your WinINSTALL Console in several ways.

What do you want to do?

Have the Console start where it was in the last session.

Show/hide the shortcuts bar.

Show/hide toolbar bar.

Show/hide status bar.


Console Security

A given access right is assigned to either an NT user or group. The currently logged-on user of the console will have not only the access rights granted specifically to him or her, but will also inherit any access right given to groups of which (s)he is a member. Menus, toolbars, and console tree nodes are not directly affected by the access rights of the user. In other words, menu commands are not enabled or disabled based on security. Instead, when a user attempts to perform an action for which (s)he does not have the proper rights, an error message appears indicating that fact.

Access Right: Allow (Full)

  • You can set console options (database, share, logging, etc.).

  • You can set security permissions.

  • You can edit/delete machines.

  • You can add/edit/delete top-level lists (i.e., lists that are directly under the Software Distribution Lists node in the tree pane).

  • You can add/edit/delete reports.

  • You have full access to all console functions. (This full right overrides any other access rights assigned or not assigned for console features &endash; i.e., the other rights described below.)

No Access Rights (Deny)

  • The Console Options dialog does not appear.

  • The Console Security dialog does not appear.

  • You cannot edit/delete machines.

  • You cannot add/edit/delete top-level lists.

  • You cannot add/edit/delete reports.

Access Right: Allow (Full)

  • You can launch the CD Wizard.

No Access Rights (Deny)

  • The CD Wizard does not open.

Access Right: Allow (Full)

  • You can launch the Conflict Assessment Wizard.

  • You can add/edit/delete conflict assessments.

Access Right: View Conflict Assessments

  • You can view conflict assessments.

No Access Rights (Deny)

  • The Conflict Assessment Wizard does not open.

  • You cannot add/edit/delete conflict assessments.

Access Right: Allow (Full)

  • You can add/edit/delete lists, packages, and merge modules.

Access Right: View Packages

  • You can view packages and merge modules, but not modify them.

No Access Rights (Deny)

  • When you click the Software Distribution tree node, an 'Access Denied’ message appears.

Access Right: Allow (Full)

  • Add/Edit/Delete lists, packages, and merge modules

Access Right: View Packages

  • Can view packages and merge modules, but not modify

No Access Rights (Deny)

  • Error message and unable to drill down from Software Distribution node

Console Security

With WinINSTALL, you can set the access rights of specific users and groups for each area of functionality available from the WinINSTALL Console. These security settings cover only the activity of the Console user and do not apply to other parts of WinINSTALL, such as Discover.

For each high-level feature identified, the currently logged-on user of the console must have the proper access right(s) assigned in order to perform the specific activities of that feature.

What do you want to do?

View administrative access rights.

View access rights to the CD Wizard.

View conflict assessment access rights.


System Requirements

Minimum System Requirements for Installing WinINSTALL

The minimum system requirements for installing WinINSTALL are listed below for each WinINSTALL component:

WinINSTALL Database

The WinINSTALL database can be any of the following:

    • Microsoft® SQL Server 2005 Express Edition

    • Microsoft® SQL Server 2000

    • Oracle 9i or later

                WinINSTALL Console

                Hardware

                  • 85 MB of disk space, plus sufficient additional space to store application packages built and edited in the console. (for local components of WinINSTALL)

                Software

                  • Windows XP / Windows 2000 / 2003

                  • Microsoft Windows Installer 3.1

                This file is included with Windows 2000 and later, but may not necessarily be the correct version. Deploying the WinINSTALL console will install or upgrade to Windows Installer 3.1 as necessary.

                Warning: If it is necessary to upgrade to or install Windows Installer 3.1 as part of the console setup, a reboot will be required.

                  • Microsoft Data Access Components (MDAC) 2.71

                The Microsoft SQL Server client software must be installed in order for you to use the Database Creation Wizard to create and initialize the WinINSTALL database. Except for the web-based installation, all other installation methods offer the option of installing the client software.

                Warning: If an earlier version of MDAC is already installed at the time when the WinINSTALL console is installed, the MDAC upgrade is liable to cause the machine to reboot.

                  • Oracle Client Software

                If you are using Oracle® as your database, you must first manually install the client software in order to have database connectivity. Database connectivity is required for you to run the Console or use the Database Creation Wizard to initialize your WinINSTALL database.

                Display

                  • Resolution: 1024 X 768 or higher

                  • Color: 16-bit or better

                WinINSTALL Reference Machine (clean client machine on which packages are discovered)

                Hardware

                  • As required for applications being packaged

                Software

                  Note: A package must be created on the same operating system as the client workstation on which the package will be installed.

                    • Microsoft Windows Installer 3.1 on Windows 2000 and above, Windows Installer 2.0 on Windows NT and Windows 95/98


Package Management

You can build Windows Installer packages, merge modules, transforms, and patches. You can build them manually or let a Wizard step you through the process. Once they are built, you organize packages in the console in special containers called lists. (Lists are special WinINSTALL files with a .lst extension.)

When you build a package manually in the console, it is automatically added to the Console when you save it. When you use the Discover Wizard to build a package, merge module, or transform on a reference machine, you have two choices:

  • If you tell Discover to add the package to a list that already appears in the Console, the package is automatically added to the Console.

  • If you don't specify a list or tell Discover to add it to a list that does not appear in the console, you must add the package to the Console manually.

You can also add to the Console other existing packages, such as third-party MSI packages, merge modules, patches, or transforms.

All packages that have been added to the Console can be edited in the console, regardless of how they were originally created.

What do you want to do?

Organize application packages.

Build a new application package.

Add an application package to the WinINSTALL Console.

Edit an existing application package.


Organize Packages

  1. Expand the Software Distribution node in the tree pane and highlight any list or sub-list beneath it.

  2. Do one of the following:

    • Right-click the list and select New from the pop-up menu.

    • Choose New from the File menu on the menubar.

  3. Enter the required information on the Create Application List dialog and click OK.

  1. Expand the Software Distribution node in the tree pane and highlight any list or sub-list beneath it.

  2. Do one of the following:

    • Click [image] on the toolbar.

    • Right-click the list and choose Add Existing --> Application List from the pop-up menu.

    • From the Actions menu on the menubar, choose Add Existing --> Application List.

  3. On the Open dialog, navigate to the list file that you want to add and click OK.

  1. In the tree pane, expand the Software Distribution node and the Software Distribution Lists sub-node.

  2. Highlight the list or sub-list that you want to remove and do one of the following:

    • Right-click the list and choose Delete from the pop-up menu.

    • Choose Delete from the File menu on the menubar.

  3. You receive a message asking whether it is okay to remove the highlighted list from (the Software Distribution Lists) List.

  4. Click OK and the list file no longer displays.

  1. In the tree pane, expand the Software Distribution node and the Software Distribution Lists sub-node.

  2. Highlight the list or sub-list to which you want to add a package and do one of the following:

    • Click [image] (WinINSTALL package) or [image] (Windows Installer package) on the toolbar.

    • Right-click the list and choose Add Existing --> WinINSTALL Package or Windows Installer Package from the pop-up menu.

    • From the Actions menu on the menubar, choose Add Existing --> WinINSTALL Package or Windows Installer Package.

  3. On the Open dialog, navigate to the package (.NAI or .MSI file) that you want to add and click OK.

  1. In the tree pane, expand the Software Distribution node, the Software Distribution Lists sub-node, and a nested list or lists, if necessary.

  2. Highlight the package that you want to remove and do one of the following:

    • Right-click the package and choose Delete from the pop-up menu.

    • Choose Delete from the File menu on the menubar.

  3. You receive a message asking whether it is okay to remove the highlighted package. Click Yes and the list file no longer displays on the Console.

  4. You receive a second message asking whether it is okay to delete the actual .NAI or .MSI file.

    • If you click Yes, the file is permanently deleted and cannot be added back to the Console.

    • If you click No, the package no longer displays in the console but it still exists and can be added back to the Console if desired.

  1. In the tree pane, expand the Software Distribution node and the Software Distribution Lists sub-node.

  2. Highlight the list or sub-list whose contents you want to alphabetize and do one of the following:

    • Right-click the list and choose Alphabetize List from the pop-up menu.

    • Choose Alphabetize List from the Actions menu.

  3. The packages within the list now display in alphabetic order.

  1. In the tree pane, expand the Software Distribution node and the Software Distribution Lists sub-node.

  2. Highlight the list or sub-list whose contents you want to reorder and do one of the following:

    • Right-click the list and choose Reorder List from the pop-up menu.

    • Choose Reorder List from the Actions menu.

  3. On the Reorder List dialog, use the Up and Down arrow keys to manipulate the order of the packages in the list and click OK.

  4. The packages within the list now display in the order that you specified. The packages will be processed by the installer in this order.

Organize Application Packages

You organize packages in lists, which are special WinINSTALL text files with a .lst extension. List files reside in the Packages directory in the WinINSTALL share. List files can contain package files and other list files, with their own sets of package files.

List files are an important management tool within the WinINSTALL console. They allow you to group packages for any purpose that satisfies your needs, such as to reflect specific functions or to mirror your organizational structure. For example, you can separate test and production packages into separate lists, or you can group all of the packages for a specific department in one list.

In the WinINSTALL console, lists and their child lists and packages are shown nested in a hierarchical tree structure. The top level nodes are Software Distribution Lists and Merge Module Folders, located under the Software Distribution node in the tree pane. All other lists and folders are nested beneath these parent nodes. .

Note: The Merge Module Folders node contains only folders with merge modules and has no lists.

You can add a new or existing list to any top-level list or to any nested child list. As you add new or existing lists, they display in the tree view of the Console. When you add an existing list, you also add all packages or lists that belong to that list. When you expand an existing list that you have added, the packages and lists that belong to that list display beneath it in the console.

WinINSTALL can automatically alphabetize the contents of a list file and it can also allow you to reorder the contents of a list in a sequence that you define.

What do you want to do?

Know when to create a new list file.

Create a new list and add it to the Console.

Add an existing list to the Console.

Remove a list from the Console.

Add an existing package to the Console.

Remove a package from the Console.

Alphabetize the contents of a list.

Reorder the contents of a list.


Build a Package

You can build Windows Installer packages, merge modules, transforms, and patches. You can build them manually in the console or let a Wizard step you through the process. To build packages, including merge modules, and transforms, it is recommended to use the Discover Wizard on a clean reference machine. The Patch Wizard is the recommended method of building a Windows Installer patch.

What do you want to do?

Build a package with Discover.

Build a Windows Installer package manually.

Build a Windows Installer patch using the Patch Wizard.


Add Packages to the Console

Add a Package to the Console

You can add any existing Windows Installer package to a list in the console, regardless of whether it was created with WinINSTALL, supplied by a software vendor, or created with other third-party tools. You cannot add a package directly beneath Software Distribution Lists, the top-level node, but you can add a package to any list nested beneath the Software Distribution Lists node.

To add a package to the Console:

  1. In the tree pane, expand the Software Distribution node and the Software Distribution Lists sub-node.

  2. Highlight the list or sub-list to which you want to add a package and do one of the following:

    • Click [image] (Windows Installer package) on the toolbar.

    • Right-click the list and choose Add Existing --> Windows Installer Package from the pop-up menu.

    • From the Actions menu on the menubar, choose Add Existing --> Windows Installer Package.

  3. On the Open dialog , navigate to the package that you want to add and double-click it. The dialog closes, and the package you selected now displays beneath the highlighted list file in the tree view of the console. You can now view and edit the features and components of this package in the data view.


Edit Packages

Edit Application Packages

From the Console, you can edit Windows Installer packages, whether they were created by WinINSTALL, an Independent Software Vendor (ISV), or any other third-party tool.

You can modify packages in a number of ways.

  • Add administrative information about a package

  • Add or remove a feature

  • Add or remove a component

  • Change the list of files to be added, copied, moved, or removed

  • Modify attributes of files

  • Add fonts

  • Alter the list of shortcuts to be copied or removed

  • Modify information about shortcuts

  • Change registry settings

  • Add a service or modify information about a service

  • Edit INI files and environment variables

  • Specify that a package should be advertised

  • Add dialogs to display and scripts to execute (custom actions and external processing)

What do you want to do?

Edit a Windows Installer package.


Creating and Using a Merge Module Cache

Creating and Using the Merge Module Cache

WinINSTALL allows you to specify particular merge modules that you want 'cached' for possible use when Discover builds an MSI package or converts a package from NAI format to MSI format. When merge modules are 'cached", WinINSTALL creates (or updates) an XML file that holds a list of files that are added by each of the cached merge modules. Then, when Discover builds or creates a converted MSI package, it checks that list of files (in the merge modules that are cached) against the files that will be added by the MSI package being built. When it finds a match, it uses the merge module to add the files rather than having the files added by the MSI package itself.

Using merge modules in the creation of MSI packages helps keep your registry cleaner because it eliminates multiple entries for common components that are used by multiple applications. When you use merge modules, these common components have the same identifier (GUID) in each MSI package in which they are used.

WinINSTALL ships with a set of commonly used merge modules that you can add to the merge module cache. In addition, you can create, import, or download additional merge modules that can also be added to this cache. Merge modules that are added to the cache must be stored in folders. (The Microsoft merge modules that ship with the product are stored in \\<WinINSTALL share>\MergeModules\Microsoft.) If you modify the contents of a merge module folder after you have added that folder to the cache, you must refresh the cache to capture the changes.

Merge modules are more frequently used by developers than by network administrators. However, network administrators sometimes use merge modules - for example, on a one-time basis to insert registry information into an existing package. This allows registry changes to be made without changing the MSI package itself.

What do you want to do?

Add merge modules to the merge module cache.

Remove merge modules from the merge module cache.

Update the merge module cache.


Add, View or Modify a Windows Installer Package

Overview of Windows Installer Packages

Also called MSI packages, Windows Installer packages are application packages with the file extension .msi. They can be created by the Discover Wizard (discover.exe), but they can also be created manually in the console. They can be edited from within the WinINSTALL Console. . MSI packages are installed on target machines by the Windows Installer. A Windows Installer package is made up of one or more features, which are in turn made up of one or more components.

When you add or highlight a Windows Installer package, feature, or component in the tree pane, the categories below display in the list pane. As you click each category, context-sensitive tabs display in the data pane. On these tabs, you can view, enter, modify or delete the detailed information that governs the actions performed when the highlighted package, feature, or component is installed.

General

Package-level

Feature-level

Component-level

Files

Shortcuts

Registry

Services

Edits

Advertising

Patches and Transforms

With the exception of General, the appearance of the data tabs is the same, regardless of whether a component, feature or package is selected. However, the amount of information available on the tab is different. If a component is selected, only information for that component is available. If a feature is selected, information for all components in that feature is available. If a package is selected, information for all features - and thus all components - in that package is available.

If you modify information, you must save your changes by clicking [image] on the toolbar or choosing File --> Save from the menu bar.

What do you want to do?

View or modify general package information.

View or modify general feature information.

View or modify general component information.

View or modify file changes made during installation.

View or modify shortcut changes made during installation.

View or modify registry changes made during installation.

View or modify service changes made during installation.

View or modify INI and ASCII text file changes made during installation.

View or modify patches to be applied during installation.

View or modify transforms to be applied during installation.

Directly view or edit values in the MSI tables.


General Component-level Installation Information for a Windows Installer Package

A component is the smallest and most fundamental unit in a Windows Installer package. In addition to detailed installation instructions about files, registry keys, environment variables, and shortcuts, packages also contain general installation information about components. When you highlight a component in the tree pane and select General in the list pane, you can edit this general information on the following tabs in the data pane:

Summary Tab

The information on this tab uniquely identifies the component, tells the installer where it is located on the installation media and where it should be installed on the local machine, specifies the value that will be used to find the component, and optionally defines the conditions under which the component will be installed.

Reserve Cost Tab

The information on this tab designates the amount of disk space that must be reserved if the component will be installed.

Advanced Tab

The information on this tab tells the installer where it should look for the installation files for this component and specifies whether the reference count in the shared DLL registry should be incremented, whether the component should be removed during an uninstall, whether it should be reinstalled if it already exists, and whether an associated condition should be evaluated again during a reinstall.

If you edit the general information for a component, save your changes by clicking [image] on the toolbar or choosing File --> Save from the menu bar.


This is an internally generated alphanumeric value that uniquely identifies the component for the installer. It is in the format: WICOMP<0000000n>, where <0000000n> is a unique auto-incremented 8-digit number. This value is used to populate or modify the Component column of the Component table. This value is read-only and is used to relate various tables together.

Specify the private property that represents the folder on the installation media from which the component will be installed. This private property will be resolved at runtime to the location of the MSI file. If you change the existing value, the new entry must begin with [SourceDir]\, followed by the path to the location of the component. If the new entry does not start with [SourceDir]\, you will receive an error message when you leave this tab.

Specify the public property that represents the folder on the local machine to which the component will be installed. This property can be specified in the Property table of the MSI database or on the run line. If no property is specified, it resolves at runtime to the drive with the most free space available. If you change the existing value, you must enter a valid directory property value or click [image] to browse for one on the Select Directory dialog. If you enter an invalid directory property value, WinINSTALL will automatically change it back to [TARGETDIR]/ when you leave this tab.

Specify the GUID of the component that will be installed. Click [image] to create a new GUID.

Specify the value that will be used by the installer to detect the presence of the component. It can be defined as the location of a specific file or the value of a registry key, or it can be null. If it refers to a file, the file must be present in order for the installer to think that the component is installed. If it is a registry key, that key must be present in order for the installer to think that the component is installed. If it is null, the installer will use the directory as the key path, and if the directory is not present, it will reinstall the component. This value is used to populate or modify the Keypath column of the Component table. Click [image] to browse for a keypath on the Define Keypath dialog.

Create an optional conditional statement that can control whether the component is installed. If the condition evaluates to true or no condition is specified, the component is enabled. If the condition evaluates to false, the component is not installed. This value is used to populate or modify the Condition column of the Component table. Click [image] to create a condition on the Condition dialog.

Adding General Component-level Installation Information (Summary Tab)

The information on this tab uniquely identifies the new component, tells the installer where it is located on the installation media and where it should be installed on the local machine, specifies the value that will be used to find the component, and optionally defines the conditions under which the component will be installed. The values entered on this tab are used to populate or modify the Components table in the MSI database.

On the Summary tab, you view or enter the following information for a new component:

Identifier

Source

Target

Component

Key Path

Condition

To continue, click another tab or make another selection from the list view. To save your entries, click [image] or choose Save from the File menu.


This is an internally generated alphanumeric value that uniquely identifies the component for the installer. It is in the format: WICOMP<0000000n>, where <0000000n> is a unique auto-incremented 8-digit number. This value is used to populate or modify the Component column of the Component table. This value is read-only and is used to relate various tables together.

Specify the private property that represents the folder on the installation media from which the component will be installed. This private property will be resolved at runtime to the location of the MSI file. If you change the existing value, the new entry must begin with [SourceDir]\, followed by the path to the location of the component. If the new entry does not start with [SourceDir]\, you will receive an error message when you leave this tab.

Specify the public property that represents the folder on the local machine to which the component will be installed. This property can be specified in the Property table of the MSI database or on the run line. If no property is specified, it resolves at runtime to the drive with the most free space available. If you change the existing value, you must enter a valid directory property value or click [image] to browse for one on the Select Directory dialog. If you enter an invalid directory property value, WinINSTALL will automatically change it back to [TARGETDIR]/ when you leave this tab.

Specify the GUID of the component that will be installed. Click [image] to create a new GUID.

Specify the value that will be used by the installer to detect the presence of the component. It can be defined as the location of a specific file or the value of a registry key, or it can be null. If it refers to a file, the file must be present in order for the installer to think that the component is installed. If it is a registry key, that key must be present in order for the installer to think that the component is installed. If it is null, the installer will use the directory as the key path, and if the directory is not present, it will reinstall the component. This value is used to populate or modify the Keypath column of the Component table. Click [image] to browse for a keypath on the Define Keypath dialog.

Create an optional conditional statement that can control whether the component is installed. If the condition evaluates to true or no condition is specified, the component is enabled. If the condition evaluates to false, the component is not installed. This value is used to populate or modify the Condition column of the Component table. Click [image] to create a condition on the Condition dialog.

General Component-level Installation Information (Summary Tab)

When you highlight a component of a Windows Installer package in the tree pane, select General in the list pane, and click the Summary tab in the data pane, you can enter, view or edit information that uniquely identifies the highlighted component, tells the installer where it is located on the installation media and where it should be installed on the local machine, specifies the value that will be used to find the component, and optionally defines the conditions under which the component will be installed. The values entered on this tab are used to populate or modify the Components table in the MSI database.

On the Summary tab, you can view or modify the following information:

Identifier

Source

Target

Component

Key Path

Condition

To continue, click another tab or make another selection from the list view. To save your entries, click [image] or choose Save from the File menu.


This is the name of a property that is the full path to the destination directory where the component will be installed. Depending on whether the component is installed to run locally or installed to run from source, one of the two amounts of disk space specified below is added to the volume cost of the device containing the destination directory. This value is used to populate or modify the ReserveFolder column of the ReserveCost table.

This is the number of bytes of disk space that must be reserved if the component is installed to run locally. If the component is installed to run locally, this amount of disk space specified will be added to the volume cost of the device containing the destination directory. This value is used to populate or modify the ReserveLocal column of the ReserveCost table.

This is the number of bytes of disk space that must be reserved if the component is installed to run from source. If the component is installed to run from source, this amount of disk space specified will be added to the volume cost of the device containing the destination directory. This value is used to populate or modify the ReserveSource column of the ReserveCost table.

General Component-level Installation Information (Reserve Cost Tab)

When you highlight a component of a Windows Installer package in the tree pane, select General in the list pane, and click the Reserve Cost tab in the data pane, you can enter, view or edit information that designates the amount of disk space (hard drive space in addition to the file size) that will be required if the component is installed. The values entered on this tab are used to populate or modify the ReserveCost table.

The word "cost" is synonymous to "disk space". The reserve cost of an MSI package ensures that once the MSI package has finished installing, there will be at least that amount of free disk space left based on the directory specified. For example, assume that you have an Adobe Acrobat MSI package that , once installed, requires a total of 3 MB of disk space. But you want to ensure that the user has 1 MB of local disk space wherever the My Documents folder (which corresponds to the [PersonalFolder] property) resides so that he/she can place .pdf files there for later viewing. To accomplish this, you would select a component that is most relevant (probably the one with the Acroread32.exe) and specify that you want to reserve 1 MB of cost (or disk space). Upon installation, the Windows Installer will take into account this extra disk space you have specified and will therefore require that there be a total of 4 MB free on the target disk (3 MB + 1 MB).

On the Reserve Cost tab, you can view or modify the following information:

Reserve Folder

Reserve Local

Reserve Source

You can perform the following actions on this tab:

  • To reserve space in a new folder, click [image] . Enter the required information on the Reserve Cost dialog and click OK.

  • To edit existing reserved space, highlight the reserve folder and click [image] . Change the desired information on the Reserve Cost dialog and click OK.

  • To delete existing reserved space, highlight the reserve folder and click [image].


When this radio button is selected, the component cannot be run from source and must be run locally. (When a component is "run from source", it means that the component is installed on a machine other than the local machine where the component is being run. When a component is "run locally", it means that the component is installed on and being run from the same machine.) The entry you make here is used to set or modify the msidbComponentAttributesLocalOnly attribute, and the resulting value is saved in the Attributes column of the Component table.

When this radio button is selected, the component can be run only from source and cannot be run locally. (When a component is "run from source", it means that the component is installed on a machine other than the local machine where the component is being run. When a component is "run locally", it means that the component is installed on and being run from the same machine.) The entry you make here is used to set or modify the msidbComponentAttributesSourceOnly attribute, and the resulting value is saved in the Attributes column of the Component table.

When this radio button is selected, the component can be run either locally or from source. The entry you make here is used to set or modify the msidbComponentAttributesOptional attribute, and the resulting value is saved in the Attributes column of the Component table.

When this check box is checked, the installer always increments the reference count in the shared DLL registry of the component's key path - creating one if it does not yet exist. When this check box is not checked, the installer will increment the reference count only if the reference count already exists. The entry you make here is used to set or modify the msidbComponentAttributesSharedDllRefCount attribute, and the resulting value is saved in the Attributes column of the Component table.

When this check box is checked, the installer will not remove the component when a feature or application that includes the component is uninstalled. The installer registers an extra system client for the component in the Windows Installer registry settings. The entry you make here is used to set or modify the msidbComponentAttributesPermanent attribute, and the resulting value is saved in the Attributes column of the Component table.

When this check box is checked, the installer does not install or reinstall the component if a key path file or a key path registry entry for the component already exists. The application does register itself as a client of the component. The entry you make here is used to set or modify the msidbComponentAttributesNeverOverwrite attribute, and the resulting value is saved in the Attributes column of the Component table.

When this check box is checked, the installer evaluates any conditions associated with the component whenever the component is reinstalled. If the condition previously evaluated to False and now evaluates to True, the installer installs the component. If the condition previously evaluated to True and now evaluates to False, the installer removes the component even if the component has other products as clients. The entry you make here is used to set or modify the msidbComponentAttributesTransitive attribute, and the resulting value is saved in the Attributes column of the Component table.

General Component-level Installation Information (Advanced Tab)

When you highlight a component of a Windows Installer package in the tree pane, select General in the list pane, and click the Advanced tab in the data pane, you can enter, view or edit information that tells the installer where it should look for the installation files for this component and specifies whether the reference count in the shared DLL registry should be incremented, whether the component should be removed during an uninstall, whether it should be reinstalled if it already exists, and whether an associated condition should be evaluated again during a reinstall. The values entered on this tab are used to populate or modify the Attributes column in the Component table.

On the Advanced tab, you can view or modify the following information:

Run component from the following location:

  • Locally only

  • From source only

  • Optional (locally or from source)

  • Increment shared DLL counter (create if necessary)

  • Disallow component uninstall during package removal

  • Skip component installation when key path exists

  • Re-evaluate component condition during reinstall

To continue, click another tab or make another selection from the list view. To save your entries, click [image] or choose Save from the File menu.


General Feature-level Installation Information for a Windows Installer Package

Windows Installer packages consist of functional elements called features, which are the discrete pieces of an application that a user can choose to install. Features can contain one or more other features and one or more components. The detailed installation instructions for a feature are associated with the components that make up that feature. However, Windows Installer packages also contain general information about the features in the package. When you highlight a feature in the tree pane and select General in the list pane, you can edit this general feature-level information on the following tabs in the data pane:

Summary Tab

The information on this tab includes the feature identifier, the name of the feature as it appears in the console, a description of the feature, and "whether", "when", and "where" instructions for the Add/Remove Programs applet.

Conditions Tab

The information on this tab includes conditions which will be evaluated to determine whether the feature will be installed.

Advanced Tab

The information on this tab includes the default install levels, where the feature should be stored, whether the feature should be advertised, and how the feature should be displayed.

If you edit the information for a feature, save your changes by clicking [image] on the toolbar or choosing File --> Save from the menu bar.


Adding a New Feature to a Windows Installer Package

WinINSTALL automatically generates a unique identifier for each new feature that is created. The identifier has the format WIFEAT<0000000n>, where <0000000n> is an auto-incremented 8-digit number. WinINSTALL uses this identifier internally to locate features. (WinINSTALL uses a similar format for all internally generated identifiers.) This value is read-only.

Enter the name for the feature that will display on the tree pane. It is a good idea to use a name that helps users to intuitively understand what the feature does.

Enter a short localizable description of the feature. This description displays as the tool-tip text when you mouse-over the feature name in the tree pane of the console.

When this radio button is selected, the components of this feature will be installed so that they run from the hard drive of the local machine. The files installed by this feature will be installed to the local hard drive and will be run from the local hard drive.

When this radio button is selected, all of the components of this feature will be installed so that they run from the source media, typically a CD or a network share. The files installed by this feature will not be installed on the local hard drive, but instead will be run from the network resource or some other installation media.

When this radio button is selected, the feature will be installed the first time that a user attempts to use it. This is called just-in-time installation, or advertising.

When this radio button is selected, the feature will not display as an installation option.

When this radio button is selected, the feature will display, but will not be an active installation option.

Adding a New Feature to a Windows Installer Package

You can add a feature by highlighting a package or feature in the tree pane and selecting Add Feature from the Actions menu, or by right-clicking a package or feature and selecting Add Feature from the pop-up menu. When a new feature is highlighted - before any components have been added to the feature - and General is selected in the List pane, only the Summary tab displays in the data pane. On the Summary tab, WinINSTALL inserts a unique feature identifier and you supply the name and description of the feature, and "whether", "when", and "where" installation instructions.

Note: Once a component is added to the feature, the Conditions tab and the Advanced tab also display in the data pane.

On the Summary tab, you view or enter the following information for a new feature:

Identifier

Name

Description

  • Run from local hard drive

  • Run from source

  • Install on first use

  • Not available

  • Not installable

  • Other (Use Advanced Tab)

To continue, make another selection from the list view. To save your entries, click [image] or choose Save from the File menu.


General Feature-level Installation Information (Summary Tab)

WinINSTALL automatically generates a unique identifier for each new feature that is created. The identifier has the format WIFEAT<0000000n>, where <0000000n> is an auto-incremented 8-digit number. WinINSTALL uses this identifier internally to locate features. (WinINSTALL uses a similar format for all internally generated identifiers.) This value is read-only.

Enter the name for the feature that will display on the tree pane. It is a good idea to use a name that helps users to intuitively understand what the feature does.

Enter a short localizable description of the feature. This description displays as the tool-tip text when you mouse-over the feature name in the tree pane of the console.

When this radio button is selected, the components of this feature will be installed so that they run from the hard drive of the local machine. The files installed by this feature will be installed to the local hard drive and will be run from the local hard drive.

When this radio button is selected, all of the components of this feature will be installed so that they run from the source media, typically a CD or a network share. The files installed by this feature will not be installed on the local hard drive, but instead will be run from the network resource or some other installation media.

When this radio button is selected, the feature will be installed the first time that a user attempts to use it. This is called just-in-time installation, or advertising.

When this radio button is selected, the feature will not display as an installation option.

When this radio button is selected, the feature will display, but will not be an active installation option.

This radio button is selected when you make either of the selections below on the Advanced tab:

Under Storage Location:

      • Favor Parent

Under Display:

      • Hide "Not Available" button

General Feature-level Installation Information (Summary Tab)

On the Summary tab, you can enter, view or edit general information about a feature used for management and documentation purposes - such as its name, ID, description, and "whether", "when", and "where" instructions.

Tip: A Windows Installer package is made up of one or more features. An example of a feature is SpellChecker in Microsoft Word.

To view or modify summary information for a feature of an MSI package:

  1. Navigate to the package under Windows Installer Packages Software Distribution Lists in the tree pane.

  2. Expand the package and highlight the desired feature.

  3. Highlight General in the list pane.

  4. Click the Summary tab in the data pane. You can view the following information:

Identifier

Name

Description

    • Run from local hard drive

    • Run from source

    • Install on first use

    • Not available

    • Not installable

    • Other (Use Advanced Tab)

Note: Choices that you make on the radio buttons above will alter what is displayed on the Advanced tab, and choices that you make on that tab will alter what displays here.

To continue, click another tab or make another selection from the list view. To save your entries, click [image] or choose Save from the File menu.


General Feature-level Installation Information (Conditions Tab

A condition is an expression that evaluates to either true or false. You can create condition statements from properties, environment variables, component action states, component install states, feature action states, and feature install states.

Every installation package has a default install level, which is an integer value that can range from 0 to 32,767. Conditions let you change the install-level value for a particular feature, and thus change its installation state. If the install level for a feature is greater than the default install level, the feature will not be installed. An install level of 0 disables and hides the feature.

General Feature-level Installation Information (Conditions Tab)

When you highlight a feature of a Windows Installer package in the tree pane, select General in the list pane, and click the Conditions tab in the data pane, you can create, view or modify conditions which will be evaluated in order to determine whether the feature will be installed. Condition definitions are used to set the install level, a numerical value that determines whether a feature is installed and, if so, how it is installed. Conditions allow you to add another level of control to the functionality of an installation.

On the Conditions tab, you can view or edit the following information:

Condition

Level

You can perform the following actions on this tab:

  • To create and add a new condition, click [image] . Enter the required information on the Feature Condition dialog and click OK.

  • To edit an existing condition or install level, highlight it and click [image] . Change the desired information on the Feature Condition dialog and click OK.

  • To delete an existing condition, highlight it and click [image].

To continue, click another tab or make another selection from the list view. To save your entries, click [image] or choose Save from the File menu.


General Feature-level Installation Information (Advanced Tab)

Packages and features both have default install levels. If the default install level for a feature is less than or equal to the default install level for the package, the feature will be installed. An install level of 0 disables and hides the feature.

Every installation package has a default install level, which is an integer value that can range from 0 to 32,767. Features are installed or not installed based on their install level. If the install level for a feature is greater than the default install level, the feature will not be installed.

A feature can be installed from the local hard drive or the source media.

  • Favor Local

First try to install the feature from the local hard drive; if that fails, try to install from the source media.

  • Favor Source

First try to install the feature from the source media; if that fails, try to install from the local hard drive.

  • Follow Parent

First try to install the feature using the same installation choice as the parent of the feature; if that fails, try alternative methods.

When a feature is advertised, it is not installed until the user tries to use it. This is called "just-in-time" advertising and has certain advantages, such as reducing the network load that accompanies an enterprise-wide simultaneous installation and not installing applications that a particular user does not need or use. You can choose whether or not to have a feature advertised, and whether to have it advertised based on the degree of integration of Windows Installer Service with the client operating system.

  • Do not allow advertising

Advertising will not be an installation option for this feature.

  • Favor advertising

Allow the feature to be advertised as an installation option.

  • Advertise only if the operating system understands MSI

Allow the feature to be advertised only if the operating system "understands" how to use the Windows Installer service.

You can determine if and how the feature should be displayed by the Windows Installer (i.e., in the MSI UI). You can choose to have the feature displayed either expanded or collapsed, or you can choose not to have it displayed at all. You can also hide the "Not available" option from the user.

  • Visible and Expanded

The feature will display as an installation option in an expanded form with its components visible.

  • Visible and Collapsed

The feature will display as an installation option in a collapsed form.

  • Invisible

The feature will not display as an installation option.

  • Hide "Not Available" button

When this check box is checked, the "Not Available" button does not appear.

General Feature-level Installation Information (Advanced Tab)

When you highlight a feature of a Windows Installer package in the tree pane, select General in the list pane, and click the Advanced tab in the data pane, you can enter, view or edit install levels, where the feature should be stored, whether the feature should be advertised, and if/how the feature should be displayed by the Windows Installer.

On the Advanced tab, you can view or edit the following information:

Default Feature Install Level

Default Package Install Level

Storage Location

Advertising

Display

Note: Some of the choices that you make on this tab will alter what is displayed on the Summary tab, and choices that you make on that tab will alter what displays here.

To continue, click another tab or make another selection from the list view. To save your entries, click [image] or choose Save from the File menu.


Package-level Installation Information

General Package-level Installation Information for a Windows Installer Package

A Windows Installer package installs a product, which can be a single application or a suite of applications. Windows Installer packages are made up of one or more features that are in turn made up of one or more components and sub-features. Windows Installer packages contain both detailed installation instructions and general product information. When you highlight a package in the tree pane and select General in the list pane, you can edit the general product information on the following tabs in the data pane:

Summary Tab

The information on this tab includes product information, support information, and whether and how the application should display in Add/Remove Programs in the Control Panel.

Install Modes Tab

The information on this tab includes instructions on whether to install the product per user or per machine, whether to reboot after installation, and what type of user interface to use.

Advanced Tab

The information on this tab includes a listing of all the components in the package, the condition(s) that must be met in order for the product to be installed, and the UI and install action sequences for a regular install, an administrative install, and an advertised install.

Directory Tab

This tab allows you to view, add, edit or delete the directories used in a Windows Installer package.

If you add new general information about a package, or edit existing information, you must save your changes by clicking [image] on the toolbar or choosing File --> Save from the menu bar.


General Package-level Installation Information (Summary Tab)

Choose whether the application will appear on the Add/Remove Programs dialog (available from the Control Panel), what icon to display, and what actions will be available to the user if it does appear.

ARP is a form of application advertising.

Click the icon button to enter or browse to a file containing the desired icon to display in ARP. The selected icon will then appear on this button in the WinINSTALL Console.

The following check boxes allow you to specify whether or not the icon will display in ARP and, if so, what operations will be available to the user:

      • Show Product in ARP

When this check box is not checked, the application will not appear in the list of applications on the Add/Remove Programs dialog.

      • Show Change Button

When this check box is checked, the user can modify the installation of the application from the Add/Remove Programs dialog.

      • Show Remove Button

When this check box is checked, the user can uninstall the application from the Add/Remove Programs dialog.

Enter the information that will display on the Support Info dialog when a user selects the application on the Add/Remove Programs dialog (available from the Control Panel) and clicks "Click here for support information":

Contact

This is the name of a person or entity that can be contacted for product support.

Phone

This is the telephone number for product support.

Online Support

This is the URL for online product support.

Helpfile URL

This is the URL for the online help system.

Update Info URL

This is the URL where users can find update information about the product.

Registered User/Company

This identifies the user or company that is the registered owner of the product. This value can be obtained in three ways:

      • Automatic (get from Registry)

The Windows Installer will automatically retrieve the name of the current user from the Registry.

      • Suppress

The Windows Installer will not display this information during installation.

      • Use these values

The Windows Installer will use the values that you enter for the USER NAME and COMPANY NAME.

    • Show Repair button

When this check box is not checked, the Repair button does not appear on the Add/Remove Programs dialog.

All of the information in the Summary Information Stream of the Windows Installer package is displayed. You can view or modify this information and are given the option of synchronizing this information with the ARP (Add/Remove Programs) information.

This read-only field displays the version of the MSI database schema that was used to create the package.

Tip: To upgrade the schema of an existing package, right-click on the package in the tree view, and choose Upgrade Schema Version&ldots; from the context menu. You cannot downgrade a package to a lower schema.

Enter the number that specifies the particular version of the product being installed. The version number is in the format -

xxxxx.xxxxx.xxxxx.xxxxx

where x represents a digit and the maximum version string allowed is 65535.65535.65535.65535.

Enter the GUID that is the principal identifier for the application or product.

32-bit and 64-bit versions of an application must have different product codes. If any 32-bit component of an application is recompiled into a 64-bit component, a new product code must be assigned.

Note: The product and the package each have their own distinct GUID. These may or may not match, but updates to a product will typically retain the same product GUID but often change the package GUID (see below, as well as help text for Package Code).

If significant changes are made to a product then the product code should also be changed to reflect this. It is not however a requirement that the product code be changed if the changes to the product are relatively minor.

Click [image] to generate a new product code. A message box will appear, asking whether you want to generate a new GUID.

Enter the GUID that is the principal identifier for the package. The package code must be unique for every package.

Note: The product and the package each have their own distinct GUID. These may or may not match, but updates to a product will retain the same product GUID but often change the package GUID (see below, as well as help text for Product Code).

A small update, a minor upgrade, or a major upgrade of the same application all require separate package codes. Versions of the same application in different languages require separate package codes.

Click [image] to generate a new package code. A message box will appear, asking you whether you want to generate a new GUID.

Note: Any substantive change made to the installation of a product (i.e., anything that changes the actual installation state) should have a new package code. Otherwise, existing installations of the package will fail to update.

From the drop-down list of available languages, select the language in which the application will display after it is installed.

Note: This selection does not determine the language of the Installer display. Instead, it lets the Installer know what language code page to use when installing the application.

Enter the product identifier that will display when the application is selected in the Add/Remove Programs dialog.

Enter the name of the software vendor that created the application.

Enter the web address of the software vendor that created the application.

Enter the comments that will display when a user selects the application on the Add/Remove Programs dialog (available from the Control Panel).

    • Do not automatically update package code when saving changes

When this radio button is not selected, WinINSTALL keeps the same package code when it saves changes to the package. When this radio button is selected, WinINSTALL changes the package code when it saves changes to the package.

    • Automatically update package code when saving changes

When this radio button is selected, WinINSTALL always changes the package code when it saves changes to the package.

    • Use global setting {found under Preferences}

When this radio button is selected, WinINSTALL will determine whether to update the package code when it saves changes to the package, based on the global setting found under Preferences.

If significant changes are made to a package, the package code should be changed to reflect this. It is not necessary for a package to be changed if the changes to the package are relatively minor.

General Package-level Installation Information (Summary Tab)

On the Summary tab in the data pane, you can view, enter, edit or delete administrative information about the highlighted package, such as product information, support information, and whether and how the application should display in Add/Remove Programs in the Control Panel.

To see or enter administrative information about a package:

  1. Navigate to the package in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Summary tab in the data pane. You can view the following information:

ARP Icon

Support Information

Summary Information

MSI Schema

Version

Product Code

Package Code

Product Language

Product ID

Manufacturer

Manufacturer's URL

C omments

Update package code

To continue, click another tab in the data pane or make another selection from the list pane. To save your entries, click [image] on the toolbar or choose Save from the File menu.


The signature acts as an identifier for the search. When performing a search, the installer will first attempt to find the item through the CompLocator search, then the RegLocator, followed by the IniLocator, and finally the DrLocator. If you wish to find a file, ensure that the specified signature is authored into the Signature table. If, however, you wish to find a folder, you should not author a signature into the Signature table.

AppSearch sets this property to the results of the search - for example, the location of the file indicated by the signature specified above. The AppSearch action sets this property if the file signature exists on the user's computer. If the signature is not found, the initial property value is used. If the signature is not found and the property was never initialized, the property is undefined.

Note: This must be a public property, which requires that its identifier consist of only upper case characters.

The Compliance Checking Program (CCP) uses file signatures to make sure that the user is in compliance with the program.

The RMCCPSearch action uses file signatures to validate that qualifying products are installed on a system before an upgrade installation is performed. (Each file signature in the CCPSearch table is searched for under the path referred to by the CCP_DRIVE property using the DrLocator table. The absence of the signature from the Signature table denotes a directory. If any signature is determined to exist, the RMCCPSearch action terminates.)

Advanced Package-level Installation Information (AppSearch Tab)

The AppSearch action lets you populate a property with a value found somewhere on the target operating system prior to installation. You can use this in a variety of ways, ranging from finding previous installations of products you know your package is not compatible with, to finding existing paths to files that you’d like to install your files to by default. You can even sequence the LaunchCondition action after the AppSearch action (in your InstallExecute or InstallUIExecute sequence table) to make it so the results of your AppSearch can be used for your launch conditions (e.g. you want to make sure someone has installed a particular application before installing this package, or vice-versa).

To see or enter AppSearch information about a package:

  1. Navigate to the package in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Advanced tab in the data pane and then click the AppSearch sub-tab. You can view or edit the following information:

Signature

Property

CCP

RMCCP

You can perform the following actions on this tab:

  • To add a new signature, click [image] . Enter the required information on the AppSearch and Related Tables dialog and click OK.

  • To modify an existing signature, highlight it and click [image] . Make the desired changes on the AppSearch and Related Tables dialog and click OK.

  • To delete an existing signature, highlight the signature and click [image].


Advanced Package-level Installation Information (Components Tab)

This is an internally generated alphanumeric value that uniquely identifies the component to WinINSTALL LE. It is in the format: WICOMP<0000000n>, where 0000000n is a unique auto-incremented 8-digit number.

All internally generated WinINSTALL identifiers have the same format: WI + <entity identifier> + <0000000n>.

Entity identifiers include COMP (for components), FEAT (for features), etc.

A Global Unique Identifier (GUID) is a 128-bit unique identification string used to identify different products, upgrades, and installer components. Each installer component used by Windows Installer must have a unique GUID, and every version of every product must have a unique GUID. Different upgrades of a product, however, have the same GUID because there is only one upgrade GUID for a product. GUID are also referred to as a Universally Unique Identifier.

An example of a syntactically correct GUID is shown below:

{97531-2222-44444-666666-88888888ABCD}

Note: Correct GUID format requires that GUIDs contain only numbers and upper case letters, and that they are enclosed by curly braces.

The key path is an internally generated, unique identifier assigned to a file, folder, registry key, or ODBC data source belonging to the component. The value of the key path (the specified file, folder, etc.) is what the installer uses to detect the component.

Two components cannot share the same key path value.

Note: Because folders created by the Windows Installer are deleted when they become empty, installing a component that consists of an empty folder requires an entry in the CreateFolder table.

The Key Path Value, as displayed here, is the human-readable resolution of the keypath. So, if the keypath points to a file, this column displays the file name, or if the component is a registry item, the registry key and value name appear here.

Advanced Package-level Installation Information (Components Tab)

MSI packages are made up of features, which are, in turn, made up of components or other features. Components hold various files, shortcuts, and/or registry entries. On the Component tab, you cannot create a component directly, but you can view information.

To view the components in an MSI package:

  1. Navigate to the package in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Advanced tab in the data pane and then click the Components sub-tab. You can view, but not edit, the following information:

Component

GUID

Key Path

Key Path Value


Advanced Package-level Installation Information (Custom Actions Tab)

You can edit MSI packages to create custom actions that will occur when the package is processed.

To view, create or edit custom actions that will be executed during installation of a package:

  1. Navigate to the package under Software Distribution Lists in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Advanced tab in the data pane and then click the Custom Actions sub-tab. You can view or edit the following information:

Name Descriptive label for the custom action

Type Source type:

EXE

DLL

Install

JScript

Text

VBScript

Source Location where the source of the custom action is stored

Target Target of the custom action (differs depending on source type)

You can perform the following actions on this tab:

  • To add a custom action, click [image] . Let the Custom Action Wizard walk you through the creation of a custom action.

  • To modify an existing custom action, highlight it and click [image] . Let the Custom Action Wizard walk you through the modification of a custom action.

  • To delete an existing custom action, highlight it and click [image].


Advanced Package-level Installation Information (Dialogs Tab)

WinINSTALL provides the ability to edit MSI packages to create dialogs to display when the package is processed.

Tip: MSI dialogs appear only when the .msi package is installed directly by the Windows Installer, without use of the WinINSTALL installers.

WinINSTALL provides two methods of creating MSI dialogs: individual dialog creation, or automatic creation of the usual array of installation dialogs (Welcome, progress, completion, etc.), plus dialogs to prompt the user for a value to assign to a property during the install.

You can combine these two methods by first creating the dialogs automatically and then modifying them individually.

To view, add, modify or delete dialogs that will display during installation:

  1. Navigate to the package in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Advanced tab in the data pane and then click the Dialogs sub-tab.

You can perform the following actions on this tab:

  • To automatically create a sequence of dialogs to display, including dialogs to prompt the user to enter a value to assign to a property, click the Simple GUI button to display the Dialog Properties dialog, where you can define the basic parameters for the simple GUI to be automatically generated.

  • To add a single, new dialog, click [image] . Enter a name for the dialog on the New Dialog dialog and click OK. Design the dialog box on the Dialog: dialog and the Options dialog.

  • To edit an existing dialog, highlight it and click [image] . Make the desired changes on the Dialog: dialog and the Options dialog.

  • To delete an existing dialog, highlight it and click [image].


This is the condition that must be met in order for the package to be executed.

This is the message that will display if the launch condition is not met.

Note: In this case, you are typing the actual message, not the location for a text file holding a message, as is the case with certain other messaging functions in WinINSTALL.

Advanced Package-level Installation Information (Launch Condition Tab)

You can edit MSI packages to set special launch conditions, beyond the types of conditions that can be set for NAI packages. Such conditions must be met in order for the package to be processed. For each launch condition, you can also specify a message that will display if the condition fails.

Note: A launch condition is a sequence of logical/comparative operators along with MSI properties and values. The LaunchCondition action must exist and be sequenced appropriately in order to function properly.

To view, set or modify launch conditions for a package:

  1. Navigate to the package in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Advanced tab in the data pane and then click the Launch Condition sub-tab. You can view or edit the following information:

Launch Condition

Error Message

You can perform the following actions on this tab:

  • To add a new launch condition, click [image] at the top of the tab. Enter the required information on the Launch Condition dialog and click OK.

  • To edit an existing launch condition or error message, highlight the condition and click [image] . Make the desired changes on the Launch Condition dialog and click OK.

  • To delete an existing launch condition, highlight the condition and click [image].


Pkg_HistorySubtab

Package History

WinINSTALL can record in the MSI file itself a history of modifications made to the selected package within the WinINSTALL Console. This history of changes is displayed on the General->Advanced tab->Package History sub-tab for each package. To enable this feature for a single package, select Always log changes from the drop-down on this sub-tab.

Note: MSI package history is enabled by default. The drop-down allows you to enable or disable the feature, or to set it to follow the console preference settings (see below).

To log changes to all MSI files, select any Windows Installer package in the Console tree pane and then select Edit->Preferences. On the Preferences dialog, check the Log MSI changes to the changed MSI package check box and click OK.

On the Package History sub-tab, you can view the following information for each logged change:

  • Date and time of the change

  • Type of change

  • Associated message

  • User name of the user who was logged into the Console machine at the time of the change.

Note: Package History records only three types of package events: changes to MSI tables, merging of Merge Modules, and application of Transforms.

On this screen, click the Filter button to filter the list to view only certain types of changes, click the Purge button to purge the list by date, or click the Export button to export the log to a tab-delimited text file.

Clicking the Filter button produces the Package History Filter dialog, where you can add package history filters, remove or edit existing package history filters, and select a filter to use to view the package history entries.

Note: Package history filters are temporary and are not persisted beyond the current viewing of the selected Windows Installer package.


This action will be executed as part of the installation process if the associated condition evaluates to true or there is no associated condition. Actions can be built-in actions, custom actions, or dialogs.

This condition will be evaluated in order to determine whether the associated action will be performed during installation. (The condition is evaluated at the point where the associated action falls in the installation sequence.)

This number determines the order in which the associated action will be performed during installation. (Actions are performed in ascending order beginning with "1".)

Advanced Package-level Installation Information (Sequence/Admin/Execute Tab)

On the Execute sub-tab of the Admin tab, you can view, add, modify or delete information related to the sequence of actions performed during an administrative installation. An administrative installation installs a source image of the application onto the network that is similar to a source image on a CD-ROM. Users in a workgroup who have access to this administrative image can then install the product from this source. A user must first install the product from the network to run the application. The user can choose to run-from-source when he installs and the installer uses most of the product's file directly from the network.

To view, enter or modify sequence information for the administrative installation of an application:

  1. Navigate to the package in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Advanced tab in the data pane and then click the Sequence sub-tab, the Admin sub-tab and the Execute sub-tab. You can view or edit the following information:

Action

Condition

Sequence

You can perform the following actions on this tab:

  • To add a new sequence entry to the administrative installation, click [image]. Enter the required information on the Sequence Entry dialog and click OK.

  • To edit the action, condition, or sequence number in an existing sequence entry, highlight it and click [image]. Make the desired changes on the Sequence Entry dialog and click OK.

  • To delete an existing sequence entry, highlight it and click [image].


This action will be executed as part of the installation process if the associated condition evaluates to true or there is no associated condition. Actions can be built-in actions, custom actions, or dialogs.

This condition will be evaluated in order to determine whether the associated action will be performed during installation. (The condition is evaluated at the point where the associated action falls in the installation sequence.)

This number determines the order in which the associated action will be performed during installation. (Actions are performed in ascending order beginning with "1".)

Advanced Package-level Installation Information (Sequence/Admin/User Interface Tab)

On the User Interface sub-tab of the Admin tab, you can view, add, modify or delete information related to the sequence of UI actions performed during an administrative installation. The UI sequence is optional, depending on whether the installation requires a user interface. An administrative installation installs a source image of the application onto the network that is similar to a source image on a CD-ROM. Users in a workgroup who have access to this administrative image can then install the product from this source. A user must first install the product from the network to run the application. The user can choose to run-from-source when he installs and the installer uses most of the product's file directly from the network.

To view, enter or modify UI sequence information for the administrative installation of an application:

  1. Navigate to the package in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Advanced tab in the data pane and then click the Sequence sub-tab, the Admin sub-tab and the Execute sub-tab. You can view or edit the following information:

Action

Condition

Sequence

You can perform the following actions on this tab:

  • To add a new sequence entry to the administrative installation, click [image]. Enter the required information on the Sequence Entry dialog and click OK.

  • To edit the action, condition, or sequence number in an existing sequence entry, highlight it and click [image]. Make the desired changes on the Sequence Entry dialog and click OK.

  • To delete an existing sequence entry, highlight it and click [image].

.


This action will be executed as part of the installation process if the associated condition evaluates to true or there is no associated condition. Actions can be built-in actions or dialogs, but not custom actions (per MSI specifications).

This condition will be evaluated in order to determine whether the associated action will be performed during installation. (The condition is evaluated at the point where the associated action falls in the installation sequence.)

This number determines the order in which the associated action will be performed during installation. (Actions are performed in ascending order beginning with "1".)

Advanced Package-level Installation Information (Sequence/Advertise/Execute Tab)

On the Execute sub-tab of the Advertise tab, you can view, add, modify or delete information related to the sequence of actions performed during an advertised installation. Advertising is a technique whereby an application appears to be installed, but is not actually installed until the user attempts to use the application. This is called a just-in-time installation.

To view, enter or modify sequence information for the advertised installation of an application:

  1. Navigate to the package in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Advanced tab in the data pane and then click the Sequence sub-tab, the Advertise sub-tab and the Execute sub-tab. You can view or edit the following information:

Action

Condition

Sequence

You can perform the following actions on this tab:

  • To add a new sequence entry to the advertised installation, click [image]. Enter the required information on the Sequence Entry dialog and click OK.

  • To edit the action, condition, or sequence number in an existing sequence entry, highlight it and click [image]. Make the desired changes on the Sequence Entry dialog and click OK.

  • To delete an existing sequence entry, highlight it and click [image].


Advanced Package-level Installation Information (Sequence/Advertise/User Interface

This action will be executed as part of the installation process if the associated condition evaluates to true or there is no associated condition. Actions can be built-in actions or dialogs, but not custom actions (per MSI specifications).

This condition will be evaluated in order to determine whether the associated action will be performed during installation. (The condition is evaluated at the point where the associated action falls in the installation sequence.)

This number determines the order in which the associated action will be performed during installation. (Actions are performed in ascending order beginning with "1".)

Advanced Package-level Installation Information (Sequence/Advertise/User Interface Tab)

On the User Interface sub-tab of the Advertise tab, you can view, add, modify or delete information related to the sequence of UI actions performed during an advertised installation. Advertising is a technique whereby an application appears to be installed, but is not actually installed until the user attempts to use the application. This is called a just-in-time installation. The UI sequence is optional, depending on whether the installation requires a user interface.

To view, enter or modify UI sequence information for the advertised installation of an application:

  1. Navigate to the package in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Advanced tab in the data pane and then click the Sequence sub-tab, the Advertise sub-tab and the Execute sub-tab. You can view or edit the following information:

Action

Condition

Sequence

You can perform the following actions on this tab:

  • To add a new sequence entry to the advertised installation, click [image]. Enter the required information on the Sequence Entry dialog and click OK.

  • To edit the action, condition, or sequence number in an existing sequence entry, highlight it and click [image]. Make the desired changes on the Sequence Entry dialog and click OK.

  • To delete an existing sequence entry, highlight it and click [image].


This action will be executed as part of the installation process if the associated condition evaluates to true or there is no associated condition. Actions can be built-in actions, custom actions, or dialogs.

This condition will be evaluated in order to determine whether the associated action will be performed during installation. (The condition is evaluated at the point where the associated action falls in the installation sequence.)

This number determines the order in which the associated action will be performed during installation. (Actions are performed in ascending order beginning with "1".)

Advanced Package-level Installation Information (Sequence/Install/Execute Tab)

On the Execute sub-tab of the Install sub-tab, you can view, add, modify or delete information related to the sequence of actions performed during a normal installation. The installation sequence is required.

Note: The INSTALL action is a top-level action called to install or remove components. This action queries the InstallUISequence Table and InstallExecuteSequence Table for the action to execute, the condition for action execution, and the place of the action in the sequence.

To view, enter or modify sequence information for the normal installation of an application:

  1. Navigate to the package in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Advanced tab in the data pane and then click the Sequence sub-tab, the Install sub-tab and the Execute sub-tab. You can view or edit the following information:

Action

Condition

Sequence

You can perform the following actions on this tab:

  • To add a new sequence entry to the installation, click [image]. Enter the required information on the Sequence Entry dialog and click OK.

  • To edit the action, condition, or sequence number in an existing sequence entry, highlight it and click [image]. Make the desired changes on the Sequence Entry dialog and click OK.

  • To delete an existing sequence entry, highlight it and click [image].


Advanced Package-level Installation Information (Sequence/Install/User Interface

This action will be executed as part of the installation process if the associated condition evaluates to true or there is no associated condition. Actions can be built-in actions, custom actions, or dialogs.

This condition will be evaluated in order to determine whether the associated action will be performed during installation. (The condition is evaluated at the point where the associated action falls in the installation sequence.)

This number determines the order in which the associated action will be performed during installation. (Actions are performed in ascending order beginning with "1".)

Advanced Package-level Installation Information (Sequence/Install/User Interface Tab)

On the User Interface sub-tab of the Install sub-tab, you can view, add, modify or delete information related to the sequence of UI actions performed during a normal installation. The UI sequence is optional, depending on whether the installation requires a user interface.

Note: The INSTALL action is a top-level action called to install or remove components. This action queries the InstallUISequence Table and InstallExecuteSequence Table for the action to execute, the condition for action execution, and the place of the action in the sequence.

To view, enter or modify UI sequence information for the normal installation of an application:

  1. Navigate to the package in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Advanced tab in the data pane and then click the Sequence sub-tab, the Install sub-tab and the User Interface sub-tab. You can view or edit the following information:

Action

Condition

Sequence

You can perform the following actions on this tab:

  • To add a new sequence entry to the installation, click [image]. Enter the required information on the Sequence Entry dialog and click OK.

  • To edit the action, condition, or sequence number in an existing sequence entry, highlight it and click [image]. Make the desired changes on the Sequence Entry dialog and click OK.

  • To delete an existing sequence entry, highlight it and click [image].


Advanced Package-level Installation Information (Sequence Tab)

There are three types of installations for Windows Installer packages - a normal installation, an administrative installation, and an advertised installation. Each type of installation has two different sequences of actions - one for the user interface and one for the actual installation of the product. Within each sequence, each separate action has a name, an optional condition, and a sequence number that determines the order of execution.

To view, enter or modify installation sequence information for a package:

  1. Navigate to the package in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Advanced tab in the data pane, then click the Sequence sub-tab, and finally click one of \the following sub-tabs:

Install sub-tab

Admin sub-tab

Advertise sub-tab

On the sub-tab you selected, click one of the following sub-tabs - Execute sub-tab or User Interface sub-tab.


Advanced Properties at the Package Level

When you highlight a Windows Installer package in the tree pane, select General in the list pane, and click the Advanced tab in the data pane, you can enter, view or edit installation information for a package, such as the components within it, the conditions that must be met in order for the product to be installed, the sequence of actions that will take place during a regular install, an administrative install, and an advertised install, and how the installer will locate files.

The Advanced tab has the following sub-tabs:

Components sub-tab

Launch Condition sub-tab

Sequence sub-tab


General Package-level Installation Information (Install Modes Tab)

Choose one of the following installation modes

o Install only per user

Installation should be performed based on the user who is currently logged on to the PC where the installation is being performed.

o Install only per machine

Installation should be performed based on the PC where the installation is being performed.

o Install per machine, if fails, per user

Windows Installer should first attempt to perform the installation based on the PC where the installation is being performed. If installation is not possible, Windows Installer should than attempt to perform the installation based on the user who is currently logged on.

Check this check box if you want the PC on which the application is performed to automatically reboot after installation is complete.

Check this check box if you want the user to see only progress dialogs and error messages on the PC on which the application installation is performed. If this check box is checked, it will suppress the prompt for reboot (the option above this one).

General Package-level Installation Information (Install Modes Tab)

You can edit Windows Installer packages to specify whether to install the application per user or per machine, whether to reboot after installation, and what type of user interface to use. Per-machine installations are installed once for the system; per user installations are performed for individual users on a system, which could mean multiple installations of the same application on a system.

To see or enter Install Mode information for a package:

  1. Navigate to the package in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Install Modes tab in the data pane. You can view or edit the following information:

Installation Mode

    • Reboot the workstation when this application installation is complete

    • Show basic user interface only (simple progress and error handling)

To continue, click another tab or make another selection from the list view. To save your entries, click [image] or choose Save from the File menu.


let you turn off/on installation/uninstallation privileges. They also let you require that a user have a password, a specific environment variable, or a specific Registry value in order to process the selected package. You can specify an access denial message when appropriate.

let you specify who can run the selected package based on certain conditions within the use's computer.

let you restrict the processing of packages based on the presence or absence of certain files, desktop, and Registry conditions in the user's computer.

let you control the processing of the package based on the language set for the operating system on the user's computer.

let you specify that users can process the package only if they belong to certain designated groups, such as Active Directory, Microsoft Networks, Bindery, NDS, or NT Local groups.

Setting Conditions for a Windows Installer Package

WinINSTALL lets you set conditions at the package level to determine which users can process that package. For Windows Installer packages, you can specify that clients must meet the following kinds of conditions:

General conditions

System conditions

Software conditions

Language conditions

Group conditions

To set a condition to control the processing of a Windows Installer package:

  1. Navigate to a Windows Installer package under Software Distribution Lists in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Conditions tab in the data pane.

  4. Click the Summary sub-tab to view the list of conditions that have already been set on the package. Click one of the other sub-tabs to view, set or modify specific conditions:

General sub-tab

System sub-tab

Software sub-tab

Language sub-tab

Group sub-tab


Summary of Conditions Set on a Windows Installer Package

To view the conditions that have been set on a Windows Installer package:

  1. Navigate to the package under the Software Distribution node in the tree pane.

  2. Select General in the list pane.

  3. Click the Conditions tab in the data pane and then click the Summary sub-tab.

The Summary sub-tab presents a list of the current conditions that have been set on the highlighted package. All of these conditions must be met in order for the package to be installed. The following information displays for each condition that has been set on the package:

Prerequisite

Mode

Operator

Value

You can only view the information on this tab. To change the information, you must go to the individual tabs. If you double-click a condition in the list, you are automatically taken to the appropriate tab where you can modify the condition as you choose.


Setting General Conditions on a Windows Installer Package

You can set several general conditions that determine whether a package can be processed. You can:

  • Turn on or off installation/uninstallation privileges.

  • Require a password.

  • Display an access denial message when appropriate.

  • Require a specified environment variable.

  • Require a specified registry value.

To set general conditions on a Windows Installer package:

  1. Navigate to the package under Software Distribution Lists in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Conditions tab in the data pane and then click the General sub-tab. You can view, set or modify the following:

Mode

    • Allow access

Check this check box to allow processing of the package or leave it unchecked to not allow processing of the package. Select one of the following processing modes for the package:

      • Install

      • Uninstall

Settings

    • Require Password

When this check box is checked, the user must enter the password that you specify in order to process the package. You must specify a password of up to 8 characters containing the characters A-Z or 0-9.

Access Denial Message

You can display an access denial message to users who are not allowed to process the package. Enter or browse to the fully-qualified path to the text file that contains the message that you want to display.

Note: the access denial message is used only with the automatic installer. it is designed to give feedback to a user when processing a single distribution package only. for the interactive installer, if installation is not allowed or a required environment is not present, the package simply will not appear in the interactive list or the Install button will be inactive. no access message will display.

Environment Variables

    • Enable

When this check box is checked, you can specify the name and value for an environment variable that must be present on the target system in order for the package to be processed.

Variable Name

Enter the name of the environment variable that must be present or browse for it on the Environment Variable Selector dialog. (To browse, first click [image] and then click [image].)

Value Substring

Enter the value of the environment variable that must be present.

Registry Values

    • Enable

When this check box is checked, you can specify the value name and data for a registry entry that must be present on the target system in order for the package to be processed.

Note: WinINSTALL supports registry conditions for string values only (REG_SZ). DWord and other types are not supported for this feature.

Registry Value

Enter the value name of the registry entry that must be present or browse for it on the Registry Browser dialog. (To browse, first click [image] and then click [image].)

Value Substring

Enter the value data of the registry entry that must be present.


Setting System Conditions on a Windows Installer Package

You can set system criteria that must be met by the target system in order for a package to be processed. Available system conditions include:

  • Installed memory

  • CPU type

  • Video resolution

  • Windows platform

  • Windows version

The installer checks for system prerequisites when it begins to process a package. If the target system does not have the specified prerequisites to install a package, the package will still be able to be uninstalled, unless the Remove option is disabled or there are other factors that prevent the package from being uninstalled.

To set system conditions on a Windows Installer package:

  1. Navigate to the package under Software Distribution Lists in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Conditions tab in the data pane and then click the System sub-tab. You can view, set or modify conditions for one or more of the following categories:

Installed memory

CPU type

Video resolution

Windows platform

Windows version

For each category, select one of the operators and set a value. As you create conditions, they display in the text box below. From the list of conditions that you have created, set conditions on the package:

    • To set a condition, highlight it and click the Add button.

    • To remove a condition from the list, highlight it and click the Delete button.

    • To modify a condition in the list, highlight it and click the Edit button.


Setting Software Conditions on a Windows Installer Package

You can set software criteria that must be met by the target system in order for a package to be processed. For example:

  • The Registry on the target system must either show or not show that a particular application has been installed.

  • The Desktop on the target system must either contain or not contain a shortcut with a specified command line.

  • A specified file must either exist or not exist on the target system.

  • A specified file on the target system must have a specified date/time and size.

To set software conditions on a Windows Installer package:

  1. Navigate to the package under Software Distribution Lists in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Conditions tab in the data pane and then click the Software sub-tab. You can view, set or modify the following:

    • Application

When this check box is checked, you must enter or navigate to the fully-qualified UNC path to the application file and select one of the following:

      • This application is installed

      • This application is not installed

    • Shortcut

When this check box is checked, you must enter or navigate to the fully-qualified UNC path to the command line associated with the shortcut and select one of the following:

      • A shortcut with this command line exists

      • A shortcut with this command line does not exist

    • File

When this check box is checked, you must enter or navigate to the fully-qualified UNC path to the file and select one of the following:

      • A file with the specified criteria exists

      • A file with the specified criteria does not exist

If you are checking for the properties of a file rather than for the file itself,you need to set one or both of the following criteria:

    • Date/Time

When this check box is checked, you must select an operator and specify the date or dates required by the operator.

    • Size

When this check box is checked, you must select an operator and enter the byte size of the file.

Note: Enter only numeric characters in this field - not alpha characters such as KB.


Setting Language Conditions on a Windows Installer Package

You can set language criteria that must be met by the target system in order for a package to be processed. The installer will check the language for the operating system on the target system and if it meets the criteria that are set, it will process the package.

To set language conditions on a Windows Installer package:

  1. Navigate to the package under Software Distribution Lists in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Conditions tab in the data pane and then click the Language sub-tab. You can view, set or modify the language category and the language.


Setting Group Conditions on a Windows Installer Package

Group conditions allow you to specify whether a particular user, group or computer can install and/or remove a package. WinINSTALL supports the following network types for setting group conditions

  • Active Directory

  • Bindery

  • Microsoft Networks

  • NDS

  • NT Local Groups

The installer checks to see if group conditions have been set when it begins to process the package. If any group condition has been set for package installation, the package will be installed only if the user who is logged on to the target system has been given permission (on this Group tab) to install the package. Similarly, if any group condition has been set for package removal, the package will be uninstalled only if the user who is logged on to the target system has been given permission (on this Group tab) to uninstall the package. Both the Interactive and Automatic Installer will install and remove the package if the appropriate group conditions have been set - unless there are other factors that prevent the package from being installed or uninstalled. If a package has a group condition that allows only installation, the Uninstall button in the Interactive Installer is grayed out. If a package has a group condition that allows only removal, the Install button in the Interactive Installer is grayed out.

Note: When you restrict installation for a package or a list to a group in Active Directory, the restriction also applies to nested groups. For example, if you restrict a package to Group A, and Group B is part of Group A, then everyone in Group A and Group B can install the package. Those not part of Group A or Group B cannot install the package.

To set group conditions on a Windows Installer package:

  1. Navigate to a Windows Installer package under Software Distribution Lists in the tree pane and select it.

  2. Highlight General in the list pane.

  3. Click the Conditions tab in the data pane and then click the Group sub-tab, which has a split pane.

  4. Expand a network type in the left pane of the Group sub-tab, navigate to a user, group or computer, and highlight it.

    • To restrict installation of the selected package to the highlighted user, group or computer, click the Add button to the left of the top list box on the right (labeled Restrict package installation to). The user, group or computer now displays in the list box. You can make multiple selections and mix users and computers.

    • To restrict uninstallation of the selected package to the highlighted user, group or computer, click the Add button to the left of the bottom list box on the right (labeled Restrict package removal to). The user, group or computer now displays in the list box. You can make multiple selections and mix users and computers.

  5. Save the package.

Note: If no conditions are set, the selected package can be installed on or removed from any computer by any user, unless there are other factors that prevent the package from being installed or removed. However, once a condition has been set, only those users or computers to whom permission has been given will be allowed to install or remove the package.


General Package-level Installation Information (Directory Tab)

You can view, add, edit or delete the directories used in a Windows Installer package.

To see or modify directory information for a package:

  1. Navigate to the package in the tree pane.

  2. Highlight General in the list pane.

  3. Click the Directory tab in the data pane. You can view or edit the following information:

Directory ID

Directory Name

You can perform the following action on this tab:

  • To add a directory, click [image]. Enter the required information on the Directory dialog and click OK.

  • To modify an existing directory, highlight it and click [image]. Edit the desired information on the Directory dialog and click OK.


Managing Files during Installation of a Windows Installer Package

Windows Installer packages can perform a number of file-related activities during installation.

  • Add files to a target system

  • Remove files from a target system

  • Move files on a target system

  • Duplicate files on a target system

  • Create folders on a target system

  • Set permissions on folders on a target system

  • Manage information about ODBC data sources, drivers and translator files

To manage file-related activity performed during installation of a Windows Installer package, select the package in the tree pane, highlight Files in the list pane, and click one of the following tabs in the data pane.

Add tab

Remove tab

Move File tab

Duplicate File tab

Create Folder tab

ODBC tab

Data Source sub-tab

Driver sub-tab


This is the long version of the name of the file that will be added to the target system during installation. This is a text string.

This is the short version of the name of the file that will be added to the target system during installation. This is a text string that uses short file name syntax - eight-character name, period (.), and 3-character extension. A short file name must always be provided because the SHORTFILENAMES property may be set or the target volume for the installation may only support short file names.

This is the size, in bytes, of the file to be added to the target system during installation.

This is the version of the selected component file that will be added to the target system during installation.

These are the file attributes - such as Read-Only, Hidden, or System - of the file that will be added to the target system during installation.

This is the language identified with the file that is to be added to the target system during installation.

This is the full path to the directory to which the file will be added on the target system during installation. (The default value provided by WinINSTALL is the variable [TARGETDIR]\.)

Adding Files during Installation of a Windows Installer Package

When you highlight a Windows Installer package, feature or component in the tree pane, select Files in the list pane, and click the Add tab in the data pane, you can view, add, modify or delete information about files that will be added to the target system during installation.

On the Add tab, you can view the following information about files that will be added during installation:

Long filename

Short filename

Size

Version

Attributes

Language

Target Directory

You can perform the following actions on this tab:

  • To add a new file to the list of files to be added during installation, click [image] . If you highlighted a package or a feature in the tree pane, you will be prompted to select a specific component within that package or feature before continuing. Navigate to the desired file on the Files to Insert dialog and click OK.

  • To modify an existing file on the list of files to be added during installation, highlight the file and click [image] . Make the desired changes on the File Properties dialog and click OK.

  • To delete a file from the list of files to be added during installation, highlight the file and click [image].


This is the name of a file that is to be removed from the target system when the MSI package is processed.

This specifies the circumstances under which the file is to be removed from the target system:

  • during installation of the component

  • during removal of the component

  • during installation or removal of the component

Removing Files during Installation of a Windows Installer Package

When you highlight a Windows Installer package, feature or component in the tree pane, select Files in the list pane, and click the Remove tab in the data pane, you can view, add, modify or delete information about files that will be removed from the target system during installation.

On the Remove tab, you can view the following information about files that will be removed during installation:

File name

Mode

You can perform the following actions on this tab:

  • To add a new file to the list of files to be removed during installation, click [image] . If you highlighted a package or a feature in the tree pane, you will be prompted to select a specific component within that package or feature before continuing. Navigate to the desired file on the File(s) to Remove dialog and click OK.

  • To set or change settings for when a file will be removed during installation, highlight the file and click [image] . Navigate to a different file on the Remove Properties dialog and click OK.

  • To delete a file from the list of files to be removed during installation, highlight the file and click [image].


This is the original name of the file that will be moved from one location to another on the target system during installation.

This is the name of the file after it is moved from one location to another on the target system during installation.

This is the original full-path directory location of the file that will be moved from one location to another on the target system during installation.

This is the new full-path directory location to which the file will be moved on the target system during installation.

Moving Files during Installation of a Windows Installer Package

When you highlight a Windows Installer package, feature or component in the tree pane, select Files in the list pane, and click the Move tab in the data pane, you can view, add, modify or delete information about files that will be moved from one location on the target system to another during installation.

On the Move tab, you can view the following information about files that will be moved during installation:

Source Name

Dest Name

Source Folder

Dest Folder

You can perform the following actions on this tab:

  • To add a new file to the list of files to be moved during installation, click [image] . If you highlighted a package or a feature in the tree pane, you will be prompted to select a specific component within that package or feature before continuing. Enter the required information on the Move File dialog and click OK.

  • To modify an existing file on the list of files to be moved during installation, highlight the file and click [image] . Make the desired changes on the Move File dialog and click OK.

  • To delete a file from the list of files to be moved during installation, highlight the file and click [image].


Duplicating Files during Installation of a Windows Installer Package

When you highlight a Windows Installer package, feature or component in the tree pane, select Files in the list pane, and click the Duplicate File tab in the data pane, you can view, add, modify or delete information about files that will be duplicated on the target system during installation.

On the Duplicate File tab, you can view the following information about files that will be duplicated during installation:

File

Destination Name

Destination Folder

Tip: Duplicating an installed file rather than installing it from multiple points provides better file management because changes to the duplicated file must be made in only one place. You can create multiple duplicates of the same file that is being added, but you must give them each unique names within their destination folders.

You can perform the following actions on this tab:

  • To add a new file to the list of files to be copied during installation, click [image] . If you highlighted a package or a feature in the tree pane, you will be prompted to select a specific component within that package or feature before continuing. Enter the required information on the Duplicate File dialog and click OK.

  • To modify an existing file on the list of files to be copied during installation, highlight the file and click [image] . Make the desired changes on the Duplicate File dialog and click OK.

  • To delete a file from the list of files to be copied during installation, highlight the file and click [image].


Creating Folders during Installation of a Windows Installer Package

When you highlight a Windows Installer package, feature or component in the tree pane, select Files in the list pane, and click the Add tab in the data pane, you can view, add, modify or delete folders that will be created on the target system during installation. You can also set permissions on new folders that are added or change permissions on folders that already exist on the target system.

On the Create Folder tab, you can view the a list of folders to be created during installation. The list is labeled Directory.

You can perform the following actions on this tab:

  • To add a new folder to the list of folders to be created during installation, click [image] . If you highlighted a package or a feature in the tree pane, you will be prompted to select a specific component within that package or feature before continuing. Select the directory on the Directory dialog and set permissions if desired. Click OK.

  • To set or modify permissions for a folder to be created during installation, highlight the folder and click [image] . Click the Permissions button on the Directory dialog, make the desired changes, and click OK.

  • To delete a folder from the list of folders to be created during installation, highlight the folder and click [image].


This is the internal token name for the data source. It is a primary key for he ODBCDataSource table.

This is the driver associated with the data source specified above. A driver is a program that contains a special interface that allows programs that use the driver to access files in a number of different databases.

Adding an ODBC Data Source during Installation of a Windows Installer Package

When you highlight a Windows Installer package, feature or component in the tree pane, select Files in the list pane, click the ODBC tab and then the Data Source sub-tab in the data pane, you can view, add, modify or delete information about ODBC data sources that will be installed on the target system during installation.

Note: Windows Installer does not actually perform the ODBC installation, but instead provides the necessary information to the ODBC Driver Manager, which then performs the actual installation.

On the Data Source sub-tab, you can add, delete, or modify the following information:

Data Source

Driver

You can perform the following actions on this tab:

  • To add a new ODBC data source to the list of ODBC data sources to be installed, click [image] . If you highlighted a package or a feature in the tree pane, you will be prompted to select a specific component within that package or feature before continuing. Enter the required information on the Data Source dialog and click OK.

  • To modify an existing ODBC data source, highlight it and click [image] . Make the desired changes on the Data Source dialog and click OK.

  • To delete an existing ODBC data source from the list of ODBC data sources to be installed, highlight the data source and click [image].


Adding an ODBC Driver during Installation of a Windows Installer Package

When you highlight a Windows Installer package, feature or component in the tree pane, select Files in the list pane, click the ODBC tab and then the Driver sub-tab in the data pane, you can view, add, modify or delete information about ODBC drivers that will be installed on the target system during installation.

Note: Windows Installer does not actually perform the ODBC installation, but instead provides the necessary information to the ODBC Driver Manager, which then performs the actual installation.

On the Driver sub-tab, you can add, delete, or modify the following information:

Driver

File

Setup File

You can perform the following actions on this tab:

  • To add a new ODBC driver to the list of ODBC drivers to be installed, click [image] . If you highlighted a package or a feature in the tree pane, you will be prompted to select a specific component within that package or feature before continuing. Enter the required information on the Driver dialog and click OK.

  • To modify an existing ODBC driver, highlight it and click [image] . Make the desired changes on the Driver dialog and click OK.

  • To delete an existing ODBC driver from the list of ODBC drivers to be installed, highlight it and click [image].


Adding an ODBC Translator during Installation of a Windows Installer Package

When you highlight a Windows Installer package, feature or component in the tree pane, select Files in the list pane, click the ODBC tab and then the Data Source sub-tab in the data pane, you can view, add, modify or delete information about ODBC translators that will be installed on the target system during installation.

Note: Windows Installer does not actually perform the ODBC installation, but instead provides the necessary information to the ODBC Driver Manager, which then performs the actual installation.

On the Translator sub-tab, you can add, delete, or modify the following information:

Translator

File

Setup File

You can perform the following actions on this tab:

  • To add a new ODBC translator to the list of ODBC translators to be installed, click [image] . If you highlighted a package or a feature in the tree pane, you will be prompted to select a specific component within that package or feature before continuing. Enter the required information on the Translator dialog and click OK.

  • To modify an existing ODBC translator, highlight it and click [image] . Make the desired changes on the Translator dialog and click OK.

  • To delete an existing ODBC translator from the list of ODBC translators to be installed, highlight the data source and click [image].


Adding Shortcuts during Installation of a Windows Installer Package

Users can add new shortcuts to a target system during the installation of a Windows Installer package, but they cannot remove existing ones. Shortcuts that are added during an installation are automatically removed during an uninstall.

Tip: WinINSTALL packages allow you to remove shortcuts from the target system during installation.

To manage shortcuts that are added during installation of a Windows Installer package:

  1. Navigate to the package in the tree pane.

  2. Highlight Shortcuts in the list pane.

  3. Click the Add tab in the data pane. You can view or edit the following information for each shortcut in the list:

Name Display name for the shortcut to be added

Target The target can be a feature or a file - either the feature that is the current component's parent or one of the files that will be installed with this component.

You can add new shortcuts to the list or view, edit, and delete existing shortcuts in the list:

  • To add a new shortcut to the list, click [image] and enter the required information on the Shortcut dialog displays. It has two tabs - General and Icon.

  • To remove a shortcut from the list, highlight it and click [image].

Warning: You will not be asked to verify the deletion of the shortcut.

  • To edit a shortcut in the list, either double-click it or highlight it and click [image]. Make the desired changes on the Shortcut dialog displays. It has two tabs - General and Icon.


Adding Entries to the Registry during Installation of a Windows Installer Package

  1. Right-click one of the registry hives.

  2. Select New Key from the pop-up menu.

  3. A new key is added to the hive. You can add multiple keys to a hive.

  1. Right-click one of the registry hives.

  2. Select New Key from the pop-up menu.

  3. A new key is added to the hive.

  1. Right-click one of the registry keys.

  2. Select New Key from the pop-up menu.

  3. A new key is added to the existing key. You can add multiple keys to a key.

  1. Right-click one of the registry keys.

  2. Select New Value... from the pop-up menu.

  3. Complete the Add Value dialog and click OK. The new value displays in the right pane of the tab.

  1. In the left pane, right-click the registry key that you want to remove.

  2. Select Delete from the pop-up menu.

  3. In the left pane, the registry key no longer appears.

  1. Right-click one of the registry keys.

  2. Select Permissions... from the pop-up menu.

  3. Complete the Permissions dialog and click OK. The new permissions have been added.

  1. In the left pane, right-click the registry key that you want to remove.

  2. Select Rename from the pop-up menu.

  3. Change the name of the key.

Adding Entries to the Registry during Installation of a Windows Installer Package

The registry is a hierarchical data store holds many types of information. The registry consists of entries called hives, keys, and values. The hives are the top-level folders in the hierarchy: HKEY_CLASSES_ROOT, HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE, HKEY_USERS, and HKEY_CURRENT_CONFIG. All other folders are keys. Keys can contain none, one, or multiple values, each of which consists of a name and some data in one of several formats.

Tip: WinINSTALL packages allow you to add a registry file that you want to edit if the package does not already contain instructions to edit that file.

To create new keys and values that will be added to the registry on the target machine during installation of a Windows Installer package:

  1. Navigate to the package in the tree pane.

  2. Highlight Registry in the list pane.

  3. Click the Add tab in the data pane. The registry hive displays in the left pane of the tab, and the value, type (such as DWORD or string), and data for the highlighted registry entry display in the pane on the right.

  4. To cause a registry entry to be changed during installation, navigate to the desired level (as you would do if you were using Regedit) and right-click the entry that you want to change. Depending on what is highlighted in the registry hive, you can add a new key or new value, rename the highlighted item, or delete the highlighted item. The following information displays in the pane on the right:

Value

Type

Data

Note: Values placed under any of the regular registry hives on this tab will be added to those hives in the registry during installation. Values placed under Follow the per user/per-machine specification on this tab will be added to either the HKEY_CURRENT_USER or the HKEY_LOCAL_MACHINE hive, based on the installation context specified on the Install Modes tab for the package.

On this tab, you can perform the following actions:.

Add a new key to a registry hive:

Add a new key to a registry key:

Add a new value for a registry key:

Delete an existing registry entry:

Add permissions to an existing registry entry:

Rename a registry entry:

To continue, click another tab or make another selection from the list view. To save your entries, click [image] or choose Save from the File menu.

Tip: If the Registry changes cause problems when the package is installed, you can restore the registry by following the instructions given in the Regedit Help system for your version of Windows.


Adding or Removing Registry Entries during Installation of a Windows Installer Package

Users can add, modify, and remove registry entries on a target system during the installation of a Windows Installer package. Registry entries that are added during an installation are automatically removed during an uninstall.

To add, modify, or remove registry entries during installation of a Windows Installer package:

  1. Navigate to the package in the tree pane.

  2. Highlight Registry in the list pane.

  3. Click the Add or Remove tab in the data pane.

Note: Depending on how the target machine is configured, modifying the registry may require a specific level of access. In such cases, packages that add, modify or remove registry entries must be installed under an account with this level of access or be granted elevated privileges.

What do you want to do?

Add a registry entry during installation.

Remove a registry entry during installation.


Removing Entries from the Registry during Installation of a Windows Installer Package

  1. Right-click one of the registry hives.

  2. Select New Key from the pop-up menu.

  3. A new key is added to the hive. You can add multiple keys to a hive.

  1. Right-click one of the registry hives.

  2. Select New Key from the pop-up menu.

  3. A new key is added to the hive.

  1. Right-click one of the registry keys.

  2. Select New Key from the pop-up menu.

  3. A new key is added to the existing key. You can add multiple keys to a key.

  1. Right-click one of the registry keys.

  2. Select New Value... from the pop-up menu.

  3. Complete the Add Value dialog and click OK. The new value displays in the right pane of the tab.

  1. In the left pane, right-click the registry key that you want to remove.

  2. Select Delete from the pop-up menu.

  3. In the left pane, the registry key no longer appears.

  1. Right-click one of the registry keys.

  2. Select Permissions... from the pop-up menu.

  3. Complete the Permissions dialog and click OK. The new permissions have been added.

  1. In the left pane, right-click the registry key that you want to rename.

  2. Select Rename from the pop-up menu.

  3. Change the name of the key.

Removing Entries from the Registry during Installation of a Windows Installer Package

When you highlight a Windows Installer package, feature or component in the tree pane and select Registry in the list pane, and the Remove tab in the data pane, you can create new keys and values that will be removed from the registry on the target machine where the package is installed.

On the Remove tab, the registry hive displays in the pane on the left. The value, type (such as DWORD or string), and data for the highlighted registry entry display in the pane on the right. To cause a registry entry to be changed during installation, navigate to the desired level (as you would do if you were using Regedit) and right-click the entry that you want to change. Depending on what is highlighted in the registry hive, you can add a new key or new value, rename the highlighted item, or delete the highlighted item. The following information displays in the pane on the right:

Value

Type

Data

Tip: WinINSTALL packages allow you to add a registry file that you want to edit if the package does not already contain instructions to edit that file.

The registry is a hierarchical data store holds many types of information. The registry consists of entries called hives, keys, and values. The hives are the top-level folders in the hierarchy: HKEY_CLASSES_ROOT, HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE, HKEY_USERS, and HKEY_CURRENT_CONFIG. All other folders are keys. Keys can contain none, one, or multiple values, each of which consists of a name and some data in one of several formats.

Note: Values placed under any of the regular registry hives on this tab will be added to those hives in the registry during installation. Values placed under Follow the per user/per-machine specification on this tab will be added to either the HKEY_CURRENT_USER or the HKEY_LOCAL_MACHINE hive, based on the installation context specified on the Install Modes tab for the package.

On this tab, you can perform the following actions:.

Add a new key to a registry hive:

Add a new key to a registry key:

Add a new value for a registry key:

Delete an existing registry entry:

Add permissions to an existing registry entry:

Rename a registry entry:

To continue, click another tab or make another selection from the list view. To save your entries, click [image] or choose Save from the File menu.

Note: If the Registry changes cause problems when the package is installed, you can restore the registry by following the instructions given in the Regedit Help system for your version of Windows.


Adding or Controlling Services during Installation of a Windows Installer Package

Users can add new services to a target system during the installation of a Windows Installer package and control the behavior of services. Services that are added during an installation are automatically removed during an uninstall.

To manage services that are added or removed during installation of a Windows Installer package:

  1. Navigate to the package in the tree pane.

  2. Highlight Services in the list pane.

  3. Click the Add or Control tab in the data pane.

Note: Because installing an NT service requires a specific level of NT security access, packages that add services must be installed under an account with this level of access or be granted elevated privileges.

What do you want to do?

Add a service during installation.

Control the behavior of a service during installation.


Adding NT Services during Installation of a Windows Installer Package

This is the name of an NT service to be added during installation (and to be removed during an uninstall).

The binary path is the path to the file that contains the source code for the NT service.

This is the type of service to be added:

    • Win32 Own Process

A Microsoft Win32 service that runs its own process.

    • Win32 Shared Process

A Win32 service that shares a process.

This is the method by which the service being added will be started:

    • Auto Start

The service starts automatically during system startup. Loads the driver or service when the package is installed.

    • Demand Start

The service starts when the service control manager calls the StartService function. Loads the driver or service when manually requested by the user.

Adding NT Services during Installation of a Windows Installer Package

Installing an NT service requires a specific level of NT security access. This means that any package that adds a service must be installed under an account with this level of access. Either the WinINSTALL service account must have administrative privileges or the administrator must grant special elevated privileges for the installation of a package that adds a service.

Tip: To install an NT service, a component in the MSI package must have a keypath, and that keypath must be the executable file for the service. If you have not specified the keypath and try to add a service, you will receive the message "Component needs to have key path file". To proceed, you must highlight a component in the tree pane, select General in the list pane, and specify the keypath on the Summary tab in the data pane.

To add a service during installation of a Windows Installer package or modify a service that is added during installation of a Windows Installer package:

  1. Navigate to the package in the tree pane.

  2. Highlight Services in the list pane.

  3. Click the Add tab in the data pane. You can view or edit the following information for each service in the list:

Service

Binary Path

Service Type

Start Type

You can add new services to the list or view, edit, and delete existing services in the list.

  • To add a service to the list of NT services to be added during installation, click [image] and enter the required information on the Add Service dialog displays. It has two tabs - the General tab and the Options tab.

  • To modify an existing service, highlight it and click [image] . Make the desired changes on the Add Service dialog displays. It has two tabs - the General tab and the Options tab.

  • To remove a service from the list of NT services to be added during installation, click

Warning: You will not be asked to verify the deletion of the service.


Type the actual name that Windows NT uses to identify the service in the Windows NT Registry under the following key:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Services

This is the name of the NT service for which you are specifying NT service commands (Start/Stop/Pause).

This value specifies whether the installer will wait for the service specified above to complete before proceeding with the installation. During installation, if an action starts this service, the installation will pause until the service successfully starts. Otherwise, it will pause only until the service state is pending. The logic implied by this choice is: If Wait, then submit the Start Service request to the operating system and wait for a reply;else, continue the operation.

Adding NT Service Commands during Installation of a Windows Installer Package

A Windows Installer package is installed, it can provide instructions about how an NT service is to behave. This information can include the arguments to be passed to the service; whether to start, stop, or delete the service; and whether to wait until the service completes. Modifying an NT service requires a specific level of NT security access. This means that any package that modifies a service must be installed under an account with this level of access. Either the WinINSTALL service account must have administrative privileges or the administrator must grant special elevated privileges for the installation of a package that modifies a service.

Tip: Your instructions can apply either to a service you are newly adding or to a service that already exists on the target machine. For this reason, the services listed on the Control tab do not have to be the same as those listed on the Add tab.

To modify the behavior of a service during installation of a Windows Installer package:

  1. Navigate to the package in the tree pane.

  2. Highlight Services in the list pane.

  3. Click the Control tab in the data pane. You can view or edit the following information for each service in the list:

Service Name

Wait

You can view, add, and edit the detailed information used to control the behavior of NT services during package processing and delete existing services from the list.

  • To add an NT service to the list of services to which control will be added during installation, click [image] and enter the required information on the Control Options dialog.

  • To modify an existing NT service, highlight it and click [image] and change the desired information on the Control Options dialog.

  • To remove an NT service from the list of services to which control will be added during installation, highlight it and click


Add, View or Modify INI Files, ASCII Files, and Environment Variables in a Windows

Add, View or Modify INI Files, ASCII Files, and Environment Variables in a Windows Installer Package

When you highlight a Windows Installer package, feature or component in the tree pane and select Edits in the list pane, you can view or change which INI files, ASCII text files and environment variables should be edited and how during processing of a package.

Select the INI Files tab to see or change the list of INI file edits to be executed on the target system when a component is installed. This is natively supported by MSI.

  • Select the Add sub-tab to specify INI file edits that should be executed on the target system during installation.

  • Select the Remove sub-tab to specify INI file edits that should be executed on the target system during installation.

Select the ASCII Files tab to see or change the list of ASCII file edits to be executed on the target system when a component is installed. This is natively supported by MSI.

  • Select the Add sub-tab to specify ASCII file edits that should be executed on the target system during installation.

  • Select the Remove sub-tab to specify ASCII file edits that should be executed on the target system during installation.

Select the Environment tab to specify the environment variable edits that should be executed on the target system when a component is installed. This is natively supported by MSI.


Overview of INI File Edits (Windows Installer Packages)

Overview of INI File Edits

Windows INI files are text files containing one or more headings enclosed in square brackets. Each heading is followed by one or more lines in the format key=value. With the singular exception of the Device= lines beneath the [396Enh] section of System.ini, each key beneath a given heading must be unique. Neither the order of the headings nor the order of the key=value statements beneath any heading is significant; only their presence or absence matters.

System.ini and Win.ini adhere to these rules. Other INI files may not. If the file you want to edit does not follow these rules, you cannot edit it through the INI Files tab. In this case, you can remove it from the INI Files tab, move it to the ASCII Files tab, and edit it there.

During installation, the Windows Installer checks the specified INI file for each section you have asked to modify. It takes the following actions:

  • If the heading does not exist, the installer will create it and add the specified lines beneath it.

  • If the heading does exist, the installer will check for the specified keys beneath that heading. If a specified key exists, the value will be changed to the one specified on the INI Files tab. If the key does not exist, the key=value statement will be added.

WinINSTALL recognizes certain lines in the Win.ini and System.ini files and treats them as special cases. These are:

  • The Run= line beneath the [Windows] heading in Win.ini.

  • The Load= line beneath the [Windows] heading in Win.ini.

  • The Drivers= line beneath the [Boot] heading in System.ini.

These lines are never removed or replaced. Instead, if a distribution package specifies text to be inserted in one of these lines, the WinINSTALL installation process will simply add it to what is already there (if anything). The uninstall process will remove from these lines only the text specified in the distribution package. All other text on these lines will be left intact.

The System.ini can have multiple Device= lines beneath the [386Enh] heading. Therefore, WinINSTALL treats modifications to these lines differently from other INI file modifications. If a Device= line beneath the [386Enh] heading is specified as a change to System.ini, WinINSTALL will add it to the System.ini [386Enh] section if it is not already present. No existing Device= lines will be changed or removed.

What do you want to do?

Edit INI files during the addition phase of installation.

Edit INI files during the removal phase of installation.


Adding INI Files during Installation of a Windows Installer Package

You would add a new INI file for one of two reasons - you want the package to add an INI file that doesn't currently exist on the target system or you want the package to make changes to an INI file that already exists on the target system. To add a new file:

  1. Right-click INI File Value.

  2. Select New File from the pop-up menu.

  3. On the INI File Nam e dialog, enter or browse for the name of the initialization file that you want to add and click OK.

  4. Follow the directions below to add sections and keys to the file.

You would add a new section to an INI file for one of two reasons - you want the package to add a section that doesn't currently exist on the target system or you want the package to make changes to a section that already exists on the target system. To add a new section:

  1. Right-click the initialization file to which you want to add a new section.

  2. Select New Section from the pop-up menu.

  3. In the box that appears under the initialization file, give the new section a name.

  4. Follow the directions below to add keys to the section.

You would add a new key to an INI file for one of two reasons - you want the package to add a key that doesn't currently exist on the target system or you want the package to make changes to a key that already exists on the target system. To add a new key:

  1. Right-click the section of the initialization file to which you want to add a key.

  2. Select New Key from the pop-up menu.

  3. Complete the Properties dialog and click OK. The new key displays in the right pane of the tab. You can add multiple keys to a section.

To delete a file that was added:

  1. In the left pane, right-click the initialization file that you want to remove.

  2. Select Delete from the pop-up menu.

  3. In the left pane, the initialization file no longer appears.

To delete a section that was added:

  1. In the left pane, expand the initialization file that contains the section that you want to remove.

  2. Right-click the section that you want to remove.

  3. Select Delete from the pop-up menu.

  4. In the left pane, the section no longer appears under the initialization file.

To delete a key that was added:

  1. In the left pane, expand the initialization file and the section that contain the key that you want to remove.

  2. In the right pane, right-click the key that you want to remove.

  3. Select Delete from the pop-up menu.

  4. In the right pane, the key no longer appears.

The ability to import a SYSTEM.INI or WINI.INI file saves you the time and trouble of creating the file from scratch. Simply import an existing file and edit it to suit the needs of this package.

  1. Right-click INI File Value.

  2. Select Import File from the pop-up menu.

  3. On the Import INI File dialog, enter or browse for the name of the initialization file that you want to import and click OK.

To edit a key:

  1. In the left pane, expand the initialization file and the section that contain the key that you want to edit.

  2. In the right pane, right-click the key that you want to edit.

  3. Select Rename from the pop-up menu.

  4. Complete the Properties dialog.

  5. The modified information for the key now displays in the right pane.

Edit INI Files during the Addition Phase of MSI Package Installation

When a Windows Installer package is selected in the tree pane, Edits is selected in the list pane, and the INI Files tab is clicked in the data pane, the Add sub-tab presents a hierarchical tree view of the changes to be made to initialization files on the target system during the addition phase of package processing.

The Add sub-tab is split into two panes, with the tree view of INI files on the left and the detail for changes to be made on the right. Initially, only the top-level node - INI File Value - displays in the left pane. You can perform the following actions on this tab:

  • Specify an INI file to be added to the target system

  • Import an existing initialization file.

  • Reverse your decision to have an INI file added to the target system

  • Specify a section to be added to an INI file on the target system

  • Reverse your decision to have a section added to an INI file on the target system

  • Specify a key to be added to an INI file on the target system

  • Reverse your decision to have a key added to an INI file on the target system

  • Edit a key to be added to the target system

Information in an initialization file appears in the form: Key=Value. Examples are shown below:

AppName=WinZip

FreeDiskSpace=500

When you highlight a node in the left pane, the following information displays in the right pane:

Key The label for the initialization information, such as AppName or FreeDiskSpace.

Value The value to which the key is set.

Action The action to be taken:

Add line

Create line

Add tag

If you change the INI file information to be added during installation, save your changes by clicking [image] on the toolbar or choosing File --> Save from the menu bar.

What do you want to do?

Specify an INI file to be added.

Specify a section to be added to an INI file.

Specify a key to be added to a section of an INI file.

Delete an INI file so that it will no longer be added.

Delete a section so that it will no longer be added.

Delete a key so that it will no longer be added.

Import a SYSTEM.INI or WINI.INI file.

Edit the properties of a key that will be added to an INI file.


Removing INI Files during Installation of a Windows Installer Package

To specify a new file:

  1. Right-click INI File Value.

  2. Select New File from the pop-up menu.

  3. On the INI File Nam e dialog, enter or browse for the name of the initialization file that you want to remove and click OK.

  4. Follow the directions below to add sections and keys to the file.

To specify a new section:

  1. Right-click the initialization file to which you want to add a section to be removed.

  2. Select New Section from the pop-up menu.

  3. In the box that appears under the initialization file, give the new section a name.

  4. Follow the directions below to add keys to the section.

To specify a new key:

  1. Right-click the section of the initialization file to which you want to add a key to be removed.

  2. Select New Key from the pop-up menu.

  3. Complete the Properties dialog and click OK. The new key displays in the right pane of the tab. You can add multiple keys to a section.

To delete a file that was added:

  1. In the left pane, right-click the initialization file that you want to remove.

  2. Select Delete from the pop-up menu.

  3. In the left pane, the initialization file no longer appears.

To delete a section that was added:

  1. In the left pane, expand the initialization file that contains the section that you want to remove.

  2. Right-click the section that you want to remove.

  3. Select Delete from the pop-up menu.

  4. In the left pane, the section no longer appears under the initialization file.

To delete a key that was added:

  1. In the left pane, expand the initialization file and the section that contain the key that you want to remove.

  2. In the right pane, right-click the key that you want to remove.

  3. Select Delete from the pop-up menu.

  4. In the right pane, the key no longer appears.

The ability to import an initialization file saves you the time and trouble of creating the file from scratch. Simply import an existing file and edit it to suit the needs of this package.

  1. Right-click INI File Value.

  2. Select Import File from the pop-up menu.

  3. On the Import INI File dialog, enter or browse for the name of the initialization file that you want to import and click OK.

To edit a key:

  1. In the left pane, expand the initialization file and the section that contain the key that you want to edit.

  2. In the right pane, right-click the key that you want to edit.

  3. Select Rename from the pop-up menu.

  4. Complete the Properties dialog.

  5. The modified information for the key now displays in the right pane.

Edit INI Files during the Removal Phase of MSI Package Installation

When a Windows Installer package is selected in the tree pane, Edits is selected in the list pane, and the INI Files tab is clicked in the data pane, the Remove sub-tab presents a hierarchical tree view of the changes to be made to initialization files on the target system during the removal phase of package processing.

The Remove Phase sub-tab is split into two panes, with the tree view of INI files on the left and the detail for changes to be made on the right. Initially, only the top-level node - INI File Value - displays in the left pane. You can perform the following actions on this tab:

  • Specify an INI file to be removed the target system

  • Import an existing initialization file.

  • Reverse your decision to have an INI file removed from the target system

  • Specify a section to be removed from an INI file on the target system

  • Reverse your decision to have a section removed from an INI file on the target system

  • Specify a key to be removed from an INI file on the target system

  • Reverse your decision to have a key removed from an INI file on the target system

  • Edit a key to be removed from the target system

Information in the sections of an initialization file appears in the form: Key=Value.

When you highlight a node in the left pane, the following information displays in the right pane:

Key Information in the sections of an initialization file appears in the form: Key=Value

Value The value to which the key is set.

Action The action to be taken:

Remove line

Remove tag

If you change the INI file information to be added during installation, save your changes by clicking [image] on the toolbar or choosing File --> Save from the menu bar.

What do you want to do?

Specify an INI file to be removed.

Specify a section to be added to an INI file.

Specify a key to be added to a section of an INI file.

Delete an INI file so that it will no longer be added.

Delete a section so that it will no longer be added.

Delete a key so that it will no longer be added.

Import a SYSTEM.INI or WINI.INI file.

Edit the properties of a key that will be added to an INI file.


Adding Text to an ASCII File during Installation of a Windows Installer Package

You would add a new ASCII file for one of two reasons - you want the package to add an ASCII file that doesn't currently exist on the target system or you want the package to make changes to an ASCII file that already exists on the target system. To add a new file:

  1. Right-click the top-level node - ASCII Files - in the left pane and select New File from the context menu.

  2. On the Text File Name dialog, browse to or enter the fully-qualified UNC path to the filename of the file you are adding and click OK. If you highlighted a package or a feature in the tree pane, you will be prompted to select a specific component within that package or feature before continuing.

  3. If you highlighted a package or a feature in the tree pane, you will be prompted to select a specific component within that package or feature before continuing.

  4. The ASCII Files node is expanded and the new file displays beneath it.

To delete a file that was added:

  1. Right-click the file and select Delete from the context menu.

  2. The selected file no longer displays beneath the ASCII Files node.

You can import an existing ASCII file and then edit it to make the changes required for this package. To import a file:

  1. In the left pane, right-click a file and select Import File from the context menu.

  2. On theImport Text File dialog, browse to or enter the fully-qualified UNC path to the file you are importing and click OK.

  3. You can now edit the file.

To edit a file that was added:

  1. Right-click the file and select New Edits from the context menu.

  2. On the Text File Edits dialog, enter the text that you want to insert and specify where the text should be inserted, whether the insertion should be case-sensitive, and whether the file should be created if it does not yet exist. Click OK.

Adding Text to an ASCII File during Installation of a Windows Installer Package

When you highlight a Windows Installer package, feature or component in the tree pane, select Edits in the list pane, click the ASCII Files tab and then the Add tab in the data pane, you can provide information that will be used to create or add text to an ASCII text file during installation when the associated component is installed locally or from source.

The Add tab is split into two panes, with the tree view of ASCII files on the left and the detail for changes to be made on the right. Initially, only the top-level node - ASCII Files - displays in the left pane. You can perform the following actions on this tab:

  • Add a new ASCII file to the list of files that will be created or modified on the target system.

  • Delete a file from the list of files that will be created or modified on the target system.

  • Import an existing ASCII file and use its contents to populate a file in the list of files that will be created or modified on the target system.

  • Edit an ASCII file in the list of files that will be created or modified on the target system.

    • Specify text to be inserted into the file.

    • Specify where to insert the text.

    • Specify whether to create the file if it does not already exist on the target system.

When you highlight a file in the left pane, the following information displays in the right pane:

Insertion Text

Position Text

Alternative Position Text

Action

What do you want to do?

Add a new ASCII file to the list.

Delete from the list an ASCII file that was added.

Import an ASCII file.

Edit a file in the list.


Removing Text from an ASCII File during Installation of a Windows Installer Package

To add a new file:

  1. Right-click the top-level node - ASCII Files - in the left pane and select New File from the context menu.

  2. On the Text File Name dialog, browse to or enter the fully-qualified UNC path to the filename of the file you are adding and click OK. If you highlighted a package or a feature in the tree pane, you will be prompted to select a specific component within that package or feature before continuing.

  3. If you highlighted a package or a feature in the tree pane, you will be prompted to select a specific component within that package or feature before continuing.

  4. The ASCII Files node is expanded and the new file displays beneath it.

To delete a file that was added:

  1. Right-click the file and select Delete from the context menu.

  2. The selected file no longer displays beneath the ASCII Files node.

You can import an existing ASCII file and then edit it to make the changes required for this package. To import a file:

  1. In the left pane, right-click a file and select Import File from the context menu.

  2. On theImport Text File dialog, browse to or enter the fully-qualified UNC path to the file you are importing and click OK.

  3. You can now edit the file.

To edit a file that was added:

  1. Right-click the file and select New Edits from the context menu.

  2. On the Text File Edits dialog, enter the text that you want to insert and specify where the text should be inserted, whether the insertion should be case-sensitive, and whether the file should be created if it does not yet exist. Click OK.

Removing Text from an ASCII File during Installation of a Windows Installer Package

When you highlight a Windows Installer package, feature or component in the tree pane, select Edits in the list pane, click the ASCII Files tab and then the Remove sub-tab in the data pane, you can provide information that will be used to remove text from an ASCII text file during installation when the associated component is installed locally or from source.

The Remove tab is split into two panes, with the tree view of ASCII files on the left and the detail for changes to be made on the right. Initially, only the top-level node - ASCII Files - displays in the left pane. You can perform the following actions on this tab:

  • Add a new file to the list of ASCII files that will have text removed.

  • Delete a file from the list of ASCII files that will have text removed.

  • Import an existing ASCII file and use its contents to populate a file in the list of files that will have text removed.

  • Edit a file in the list of ASCII files that will have text removed.

    • Specify lines to be removed from the file.

    • Specify paths to be removed from the file.

When you highlight a file in the left pane, the following information displays in the right pane:

Removal Text

Position Text

Alternative Position Text

Action

What do you want to do?

Add a new ASCII file to the list.

Delete an ASCII file from the list.

Import an ASCII file.

Edit a file in the list.


Editing Environment Variables during Installation of a Windows Installer Package

An environment variable defines some changeable aspect of a user's working environment, such as the default printer, browser, or text editor to be used. They are generally set during login, and because they are preset as values specific to the identified user, they save time that would be used selecting them at each login.

This is the value to which the environment variable is set.

Function:

  • Set

  • Create

  • Remove

Attributes:

  • System

  • Remove on uninstall

  • Append value to original

  • Prepend value to original

Editing Environment Variables during Installation of a Windows Installer Package

When you highlight a Windows Installer package, feature or component in the tree pane, select Edits in the list pane, and click the Environment tab in the data pane, you can provide information that will be used to modify the environment variables on the target system during installation.

The following information displays for each environment variable entry on the tab:

Variable

Value

Function & Attributes

You can view, add, edit or delete environment variables:

  • To add an environment variable to the list of environment variables that will be edited during installation, click [image] . Enter the required information on the Environment Variable dialog and click OK.

  • To modify an existing environment variable, highlight it and click [image] . Change the desired information on the Environment Variable dialog and click OK.

  • To remove an environment variable from the list of environment variables that will be edited during installation, highlight it and click


Advertising Windows Installer Packages and Features

When you highlight a Windows Installer package, feature, component, or merge module in the tree pane and select Advertising in the list pane, you can view or change registry activity related to advertising a package or feature for installation rather than actually installing it.

Note: If a package or a feature is highlighted in the tree pane, you will have to select a specific component within that package or feature before adding, modifying or deleting the information displayed on the tab.

Advertising takes advantage of the just-in-time, or installation-on-demand functionality that is built in to Windows Installer. When an application or feature is advertised, it appears to the user as if that functionality is already installed. In reality, Windows Installer does not actually perform the installation until the user tries to start an advertised application or chooses a feature of an application from a toolbar or menu for the first time.

From an MSI-structure point-of-view (i.e., features and components), installation-on-demand is accomplished by entry points (i.e., shortcuts, file extensions, and Typelibs) pointing to a parent feature (as opposed to a static file). When the user invokes an entry point, all the key paths in that feature are checked prior to launching the application.

Much of the information you enter in the data pane is used by Windows Installer to locate the component when it is actually installed. Some tabs contain information required for accessing COM objects and some are specific to the .NET platform. Information in the HKEY_CLASSES_ROOT hive of the registry maps the identifiers of COM entities (CLSIDs) to the physical locations of the modules that contain them (file locations).

Select the TypeLib tab to view, add, or modify information related to the TypeLib property of a component.

Select the Classes tab to view, add, or modify information related to the class identifier (CLSID) of a COM class.

Select the ProgID tab to view, add, or modify information related to the programmatic identifier (ProgID) of a COM class.

Select the Extensions tab to view, add, or modify information related to the Shell file extension associations of a resource component.

Select the AppID tab to view, add, or modify information related to the Application Identifiers for COM servers.

Select the Assembly tab to view, add, or modify information related to the assemblies in which component code must reside in order for .NET to execute the code at runtime.

Select the AssemblyName tab to view, add, or modify information related to the name of the .NET assembly that holds the code of a component.


This is the Globally Unique Identifier (GUID) that identifies the type library.

This is a textual description of the type library that can be localized.

This is an external key into the first column of the Directory table, which identifies the Help path for the type library. This column is ignored during advertising.

This is the language of the type library expressed as an integer that represents a language.

This is the version of the type library, including both major and minor versions.

This is the cost, or amount of disk space in bytes, associated with the registration of the type library. This must be a non-negative number or null.

Enter, View or Modify Type Library Information in a Windows Installer Package or Merge Module

Every CLSID (component) in the HKEY_CLASSES_ROOT\CLSID hive of the registry has a TypeLib subkey. Type information provides information about supported interfaces and methods, and allows clients to invoke these methods dynamically. A type library describes all of the interfaces supported by the (server) object, all of the methods, and the parameters of those methods. Since a type library describes exactly what an interface can do, it can be used to marshal data between processes. An associated feature must be installed in order for the type library to be operational. The information on this tab is used to populate the TypeLib table in the MSI database.

To view, enter or modify the type library information for the component key file, do the following:

  1. Navigate to a Windows Installer package, feature, component, or merge module under Software Distribution in the tree pane.

  2. Select Advertising in the list pane.

  3. In the data pane, click the TypeLib tab.

The following information displays for each type library entry on the tab:

Library ID

Description

Directory

Language

Version

Cost

You can add new entries and view, edit and delete existing entries:

  • To make a new entry, click [image] . Enter the required information on the TypeLib dialog and click OK.

  • To modify an existing entry, highlight the entry and click [image] . Edit the desired information on the TypeLib dialog and click OK.

  • To delete an existing entry, highlight the entry and click [image].


This is a human readable name for the component class represented by the CLSID. This is the name that will be displayed in the user interface.

This is a 128-bit Globally Unique Identifier (GUID) that identifies the CLSID key in the registry.

Every insertable object class has a programmatic identifier (ProgID). The value you enter here will be used as the default if no other ProgID is supplied. ProgIDs have the format: <vendor>.<component>.<version>.

Enter, View or Modify Class Information in a Windows Installer Package or Merge Module

Class information about a component is needed to support COM functionality. Every COM class has a unique CLSID, which is a 128-bit integer that uniquely identifies the component. The CLSID is used whenever an instance of that component is created. Class information is used to populate the Class table in the MSI database.

To view, enter or modify the classes defined by the type library pointed to by the key file attribute of the component, do the following:

  1. Navigate to a Windows Installer package, feature, component, or merge module under Software Distribution in the tree pane.

  2. Select Advertising in the list pane.

  3. In the data pane, click the Classes tab.

The following information displays for each class information entry on the tab:

Description

Class ID

Default Program ID

You can add new entries and view, edit and delete existing entries:

  • To create a new entry, click [image] . Enter the required information on the Class dialog and click OK. The Class dialog has two tabs - the General tab and the Option tab.

  • To modify an existing entry, highlight the entry and click [image] . Edit the desired information on the Class dialog and click OK. The Class dialog has two tabs - the General tab and the Option tab.

  • To delete an existing entry, highlight the entry and click [image].


Enter, View or Modify Program ID Information in a Windows Installer Package or Merge Module

The program identifier (ProgID) is a textual version of a COM class's name - easier to understand than the CLSID. ProgIDs are not necessarily unique. The recommended format for a ProgID is SERVER.COMPONENT.VERSION. Entering information about the program identifier is the first part of creating the registration information for defining a file type. Program identifier information entered is used to populate the ProgID table, which provides the Windows Installer with necessary COM information.

To view, enter or modify program identifier information, do the following:

  1. Navigate to a Windows Installer package, feature, component, or merge module under Software Distribution in the tree pane.

  2. Select Advertising in the list pane.

  3. In the data pane, click the ProgID tab.

The following information displays for each program identifier entry on the tab:

ProgID

Description

Parent

You can add new entries and view, edit and delete existing entries:

  • To make a new entry, click [image] . Enter the required information on the ProgID dialog and click OK.

  • To modify an existing entry, highlight the entry and click [image] . Edit the desired information on the ProgID dialog and click OK.

  • To delete an existing entry, highlight the entry and click [image].


This is the file name extension being registered (i.e., the extension for which the component specified below will act as a file name extension server). The file name extension does not include the preceding period and can be up to 255 characters long.

This is the Program ID associated with the file name extension specified above.

This is the MIME content type (expressed in the form of type/format) that is to be written for the extension. An example of a MIME content type for a normal ASCII file is "text/plain".

Enter, View or Modify Extensions Information in a Windows Installer Package or Merge Module

Extensions are used to create a file association for an application.

To view, enter or modify information related to the Shell file extension associations of a resource component, do the following:

  1. Navigate to a Windows Installer package, feature, component, or merge module under Software Distribution in the tree pane.

  2. Select Advertising in the list pane.

  3. In the data pane, click the Extensions tab.

    • To make a new entry, click [image] . Enter the required information on the Extension dialog and click OK. The Extension dialog has three tabs - the Extension tab, the MIME tab, and the Verb tab.

    • To modify an existing entry, highlight the entry and click [image] . Edit the desired information on the Extension dialog and click OK. The Extension dialog has three tabs - the Extension tab, the MIME tab, and the Verb tab.

    • To delete an existing entry, highlight the entry and click [image].

The following information displays for each extensions entry on the tab:

Extension

Program ID

MIME Context Type


This is a 128-bit Globally Unique Identifier (GUID) that identifies the AppID key in the registry.

This is the name of a server that will be installed on client machines to configure the client to request the object be run at a particular machine whenever an activation function is called for which a COSERVERINFO structure is not specified. This allows client applications to be written without hard-coded server names and then configured by modifying this value for the classes of objects they use.

The value you enter here specifies that the installer should configure and register the DCOM server to run as a local service with this name.

Enter the parameters that will be passed to the service specified above.

This allows DLL servers to run in a surrogate process. If no value is entered, the system-supplied surrogate is used; if a value is entered, it specifies the path of the surrogate to be used.

Enter, View or Modify Application ID Information in a Windows Installer Package or Merge Module

Application Identifiers (AppIDs) are unique identifiers for COM servers. Information stored in the AppID table in the MSI database is used by the installer to configure and register DCOM servers to do on of the following:

  • run the DCOM server as a service.

  • run the DCOM server under a different identity than the user who activated the server.

  • Register the DCOM server so that it is activated on a different computer.

  • Configure the default security access for the DCOM server.

To view, enter or modify application identifier information, do the following:

  1. Navigate to a Windows Installer package, feature, component, or merge module under Software Distribution in the tree pane.

  2. Select Advertising in the list pane.

  3. In the data pane, click the AppID tab.

The following information displays for each application identifier entry on the tab:

AppID

Remote Server Name

Local Service

Service Parameters

Dll Surrogate

You can add new entries and view, edit and delete existing entries:

  • To make a new entry, click [image] . Enter the required information on the AppID dialog and click OK.

  • To modify an existing entry, highlight the entry and click [image] . Edit the desired information on the AppID dialog and click OK.

  • To delete an existing entry, highlight the entry and click [image].


This is an internally generated alphanumeric value that uniquely identifies the component for internal WinINSTALL uses. It is in the format: WICOMP<0000000n>, where <0000000n> is a unique auto-incremented 8-digit number.

This is an internally generated alphanumeric value that uniquely identifies the feature for internal WinINSTALL uses. It is in the format: WIFEAT<0000000n>, where <0000000n> is a unique auto-incremented 8-digit number.

The file manifest is contained within an assembly and is a metadata description of the code or resources inside that assembly.

This is the EXE or DLL file that contains the resource code for the component or feature associated with this assembly.

Enter, View or Modify Assembly Information in a Windows Installer Package or Merge Module

An assembly is a logical collection of one or more EXE or DLL files that contain an application's code and resources. An assembly also contains a manifest, which is a metadata description of the code or resources inside the assembly. All security, namespace resolution and versioning features work on a per-assembly basis. An assembly often resides in a single file, but it can also be a logical - not physical - collection of multiple files in the same directory. Assemblies are used by the .NET framework to maintain a set of related resources for a feature or product so that they cannot be "broken" by the installation or uninstall of another feature or product.

To view, enter or modify the components in an assembly, do the following:

  1. Navigate to a Windows Installer package, feature, component, or merge module under Software Distribution in the tree pane.

  2. Select Advertising in the list pane.

  3. In the data pane, click the Assembly tab.

The following information displays for each assembly entry on the tab:

Component

Feature

File Manifest

File Application

You can add new entries and view, edit and delete existing entries:

  • To create a new entry, click [image] . Enter the required information on the Assembly dialog and click OK.

  • To modify an existing entry, highlight the entry and click [image] . Edit the desired information on the Assembly dialog and click OK.

  • To delete an existing entry, highlight the entry and click [image].


Enter, View or Modify Assembly Name Information in a Windows Installer Packageor Merge Module

This is the component whose key file is a resource in the assembly. (This is a key into the Component table, specifying the component tat contains this assembly.)

This is the name of the attribute associated with the value specified below.

The file name of an assembly in the global assembly cache must match the assembly name (not including the file name extension, such as .exe or .dll). Private assemblies deployed only in the root application directory can have an assembly name that is different from the file name.

Although the runtime treats assembly names as case-insensitive when binding to an assembly, the recommended practice is to manage assembly names as though they were case sensitive.

This is the value associated with the name specified above.

Enter, View or Modify Assembly Name Information in a Windows Installer Package or Merge Module

An assembly is a logical collection of one or more EXE or DLL files that contain an application's code and resources. An assembly's name has a significant impact on the assembly's scope and use by multiple applications. Assemblies intended for use by one application only require a name that is unique within the application. Assemblies that are intended to be shared by multiple applications must be signed with strong names using standard public key cryptography. Signing an assembly with a strong name allows the assembly to be deployed in the global assembly cache.

To view, enter or modify information related to the name of the .NET assembly that holds the code of a component, do the following:

  1. Navigate to a Windows Installer package, feature, component, or merge module under Software Distribution in the tree pane.

  2. Select Advertising in the list pane.

  3. In the data pane, click the Assembly Name tab.

The following information displays for each assembly name entry on the tab:

Component

Name

Value

You can add new entries and view, edit and delete existing entries:

  • To create a new entry, click [image] . Enter the required information on the Assembly Name dialog and click OK.

  • To modify an existing entry, highlight the entry and click [image] . Edit the desired information on the Assembly Name dialog and click OK.

  • To delete an existing entry, highlight the entry and click [image].


Managing Patches Associated with a Windows Installer Package

Managing the Patches Applied to a Windows Installer Package

When you highlight a Windows Installer package in the tree pane, select Patches and Transforms in the list pane, and click the Patches tab in the data pane, you can add and remove associations between patch packages and the highlighted package. WinINSTALL maintains these associations in the list file to which the package belongs.

You can perform the following actions on this tab:

  • To add a new patch package association, click [image] . On the Patch dialog, choose the patch package that you want to apply to the package at runtime and specify whether to use a small update command line, a minor upgrade command line, or a custom command line.

  • To edit an existing patch package association, highlight the patch package and click [image] . Make the desired changes on the Patch dialog.

  • To remove an existing association, highlight the patch package and click [image].


Managing Transforms Associated with a Windows Installer Package

Managing the Transforms Applied to a Windows Installer Package

When you highlight a Windows Installer package in the tree pane, select Patches and Transforms in the list pane, and click the Transforms tab in the data pane, you can create and modify the list of transforms that will be applied to the highlighted package when it is processed. You can also specify whether these transforms will be stored in a secure location when they are cached locally. The actions you take on this tab affect the value of the TRANSFORMS property. WinINSTALL also maintains the list of transforms in the list file to which the package belongs.

The following information displays on the Transforms tab:

TRANSFORMS Property

The TRANSFORMS property is a list of the transforms that the Windows Installer applies each time the package is installed, advertised, installed-on-demand, or repaired. The transforms are applied in the same order as they are listed in the property. When you click [image], you see the current value of the TRANSFORMS property on the Transform Property dialog, for the MSI package that is currently selected in the tree pane. The transforms are represented as paths to the transform files, separated by semi-colons. When the Secure check box below is checked, the list is prefixed with a pipe symbol (as reflected by the value in the TRANSFORMS Property text box above and on the Transform Property dialog).

  • Secure

When an MSI package or feature is installed or advertised on a machine with a secure file system, the installer saves any associated transforms on the local machine in a cache where the user does not have write access. When you check this check box, if the local copy of a transform becomes unavailable, the installer will attempt to restore the cache for that transform using the path specified in the TRANSFORMS property above. When you check this check box, a pipe symbol ( | ) is placed at the beginning of the list of paths.

Note: When a user removes a product, all secure transforms for that product are removed from the user's computer.

Transforms

You can perform the following actions:

  • To add a new transform to the list, click [image] . You will be asked, "Is the desired transform embedded inside the MSI file?" (Transform files can be embedded in a storage of the .msi file, or they can be stand-alone files.) If you answer Yes, you choose the transform on the Select Embedded Transform dialog. If you answer No, you navigate to the transform on the Open dialog displays. You must specify the full paths to the source of each transform - the installation fails if there are any relative paths in the list - but the transform source does not have to be located with the source of the package. When you add a new transform, it is listed on the tab below and added to the TRANSFORMS property (as reflected by the value in the TRANSFORMS Property text box above and on the Transform Property dialog).

  • To delete a transform from the list, highlight the transform and click [image]. When you delete a transform, it no longer displays on the tab below and is removed from the TRANSFORMS property (as reflected by the value in the TRANSFORMS Property text box above and on the Transform Property dialog).

  • To change the order in which a transform is applied when there are multiple transforms, highlight the transform and use the up or down arrows. The changes that you make here are reflected in the TRANSFORMS Property text box above and on the Transform Property dialog. Transforms are applied in the same order as they are listed in the property.


Enter, View or Modify Information in a Windows Installer Merge Module

Overview of Windows Installer Merge Modules

A Windows Installer merge module (.msm file), like a Windows Installer package (.msi file), is a database containing instructions, components and setup logic. A merge module, however, cannot stand alone. Instead, it must be merged into an existing Windows Installer package. This process alters the original package by adding the merge module's components and logic to it.

When you create a new merge module, before you have added any components, only one category displays in the list pane, with two tabs available in the data pane:

General

Summary Tab

Directory Tab

When you add an existing merge module to the Console or add components to a merge module you have created, the following categories display in the list pane:

General

Summary Tab

Advanced Tab

Merge Module Tab

Directory Tab

Files

Shortcuts

Registry

Services

Edits

Advertising

As you click each category, context-sensitive tabs display in the data pane. On these tabs, you can view, enter, modify or delete the detailed information that governs the actions performed when the highlighted merge module is installed. With the exception of three tabs in the General category, the tabs in the data pane are the same as those for Windows Installer packages. (The Advanced tab in the General category is the same as the one for Windows Installer packages, but the Summary, Merge Module, and Directory tabs are either different or do not exist for Windows Installer packages.)

If you modify information, you must save your changes by clicking [image] on the toolbar or choosing File --> Save from the menu bar.

What do you want to do?

View or modify general merge module information.

View or modify general merge module component information.

View or modify file changes made during installation of a merge module.

View or modify shortcut changes made during installation of a merge module.

View or modify registry changes made during installation of a merge module.

View or modify service changes made during installation of a merge module.

View or modify INI and ASCII text files changes made during installation of a merge module.


This is the WinINSTALL-generated identifier for the component, beginning with WICOMP. It is in the format: WICOMP<0000000n>, where <0000000n> is a unique auto-incremented 8-digit number. This value is used to populate or modify the Component column of the Component table. This value is read-only and is used to relate various tables together.

This is an internally generated GUID that uniquely identifies the component for the installer.

This is the WinINSTALL-generated identifier for the keypath, beginning with WIFILE or WIREG.

This is the value that will be used by the installer to detect the presence of the component. It can be defined as the location of a specific file or the value of a registry key, or it can be null. If it refers to a file, the file must be present in order for the installer to think that the component is installed. If it is a registry key, that key must be present in order for the installer to think that the component is installed. If it is null, the installer will use the directory as the key path, and if the directory is not present, it will reinstall the component. This value is used to populate or modify the Keypath column of the Component table. Click [image] to browse for a keypath on the Define Keypath dialog.

Viewing Components in a Merge Module

Windows Installer merge modules are made up of components. Components hold various files, shortcuts, and/or registry entries. (This is different from Windows Installer packages, which are made up of features that are in turn made up of components.)

When you expand a Windows Installer merge module in the tree pane and select All Components beneath it, the Components tab displays in the data pane. All of the components in the merge module are listed on this tab.

On the Components tab, you cannot create or modify components, but you can view the following information:

Component

GUID

Key Path

Key Path Value


Add Merge Modules to the Cache

You must first add a merge module to the Console before you can use it to update the WinINSTALL merge module cache. Merge modules that are added to the Console must be stored in folders. WinINSTALL ships with a set of commonly used Microsoft merge modules that you can add to the merge module cache. In addition, you can create, import, or download additional merge modules that can also be added to this cache. The Microsoft merge modules that ship with the product are stored in \\<WinINSTALL share>\MergeModules\Microsoft.

To add a folder containing merge module(s) to the Console:

  1. Expand the Software Distribution node in the tree pane.

  2. Highlight the Merge Module Folders sub-node under Software Distribution in the tree pane and do one of the following:

    • Click Add Folder from the File menu on the menubar.

    • Right-click Merge Module Folders and select Add Folder from the popup menu.

  3. Browse to the folder containing the merge module(s) on the Specify Merge Module Folder dialog, add a description, and click OK.

  4. The folder that you added displays under Merge Module Folders. When you expand the folder, all of the merge modules that it holds display beneath it.

To add the merge module(s) in a folder to the merge module cache:

  1. Expand the Software Distribution node in the tree pane.

  2. Expand the Merge Module Folders sub-node under Software Distribution in the tree pane.

  3. Right-click the folder containing the merge modules that you want to add to the cache and select Add to Cache from the popup menu. The cache is automatically created or updated and available for use. All of the files in the merge modules in the folder have now been added to an XML file so that the contents of that file can be compared to files that are added by an MSI package being built or converted by Discover.

Note: If you modify the contents of the folder after you add the merge modules it holds to the cache, you must update the merge module cache in order to include any changes.


Remove Merge Modules from the Cache

To remove a merge module from a folder in the merge module cache:

  1. Expand the Software Distribution node in the tree pane.

  2. Expand the Merge Module Folders sub-node under Software Distribution in the tree pane.

  3. Expand the folder containing the merge module that you want to remove from the cache and select Delete from the popup menu. You are asked to confirm the deletion of the merge module.

  4. Because you have changed the contents of the folder, you must update the merge module cache in order for those changes to be reflected in the cache. Once you have done that, the files in the deleted merge module are removed from the XML file that contains the list of all merge module files that have been cached.

To remove all of the merge modules in a folder in the merge module cache:

  1. Expand the Software Distribution node in the tree pane.

  2. Expand the Merge Module Folders sub-node under Software Distribution in the tree pane.

  3. Right-click the folder containing the merge modules that you want to remove from the cache and select Delete from the popup menu. You are not asked to confirm the deletion of the folder.

  4. Update the merge module cache. The files in the merge modules in the deleted folder are removed from the XML file that contains the list of all merge module files that have been cached.


Update the Merge Module Cache

If you modify the contents of a merge module folder after you have added the merge modules it holds to the cache, you must update the merge module cache to capture any changes.

To update the merge module cache:

  1. Expand the Software Distribution node in the tree pane.

  2. Do one of the following:

    • To update the merge module cache with all folders, right-click the Merge Module Folders sub-node under Software Distribution and select Update Cache from the popup menu.

    • To update the merge module cache with the contents of a specific merge module folder, expand Merge Module Folders, right-click the folder, and select Update Cache from the popup menu.

  3. The merge module cache (i.e., the XML file) is updated with any new files in the merge modules in the specified folder.


Summary of General Merge Module Information

When you are creating a new merge module, enter the version of the MSI database schema that will be used in the creation of the merge module. For existing merge modules, the version is supplied automatically based on the MSI version installed on the PC where the merge module is created and cannot be changed on this tab.

This is the GUID that identifies the merge module. You need to use this GUID when authoring the primary keys of database tables in the merge module.

This is the name of the software vendor that created the application.

This is the GUID that is the principal identifier for the package. The package code must be unique for every package. A small update, a minor upgrade, or a major upgrade of the same application all require separate package codes. Versions of the same application in different languages require separate package codes.

Click [image] to browse for the package code. If no GUID exists, a message box displays, asking you whether you want to generate a new GUID.

These comments will display on the Add/Remove Programs dialog (available from the Control Panel).

Summary of General Merge Module Information (Summary Tab)

You can view, enter, edit or delete general information about a merge module, such as the MSI schema version used to create the merge module, the signature of the merge module, the vendor who created a third-party merge module, the package code for the merge module, and comments that display on the Add/Remove Programs dialog.

To view or edit general information about a merge module, do the following:

  1. In the tree pane, navigate to the merge module under Software Distribution.

  2. In the list pane, select General.

  3. In the data pane, click the Summary tab. You can view, enter, edit or delete the following information:

MSI

Module Signature

Manufacturer

Package Code

C omments

To continue, click another tab in the data pane or make another selection from the list pane. To save your entries, click [image] on the toolbar or choose Save from the File menu.


Advanced Installation Information for Merge Modules

Advanced Installation Information for Merge Modules (Advanced Tab)

You can advertise a component in a merge module for installation rather than actually installing it. Advertising takes advantage of the just-in-time, or installation-on-demand functionality that is built in to Windows Installer. When component is advertised, it appears to the user as if that functionality is already installed. In reality, Windows Installer does not actually perform the installation until the user tries to start an application with an advertised component for the first time.

Windows Installer accomplishes installation-on-demand by entry points (i.e., shortcuts, file extensions, and Typelibs) that point to a parent feature (as opposed to a static file). When the user invokes an entry point, all the key paths in that feature are checked prior to launching the application.

Much of the information you enter in the data pane is used by Windows Installer to locate the component when it is actually installed. Some tabs contain information required for accessing COM objects and some are specific to the .NET platform. Information in the HKEY_CLASSES_ROOT hive of the registry maps the identifiers of COM entities (CLSIDs) to the physical locations of the modules that contain them (file locations).

Select the TypeLib tab to view, add, or modify information related to the TypeLib property of a component.

Select the Classes tab to view, add, or modify information related to the class identifier (CLSID) of a COM class.

Select the ProgID tab to view, add, or modify information related to the programmatic identifier (ProgID) of a COM class.

Select the Extensions tab to view, add, or modify information related to the Shell file extension associations of a resource component.

Select the AppID tab to view, add, or modify information related to the Application Identifiers for COM servers.

Select the Assembly tab to view, add, or modify information related to the assemblies in which component code must reside in order for .NET to execute the code at runtime.

Select the AssemblyName tab to view, add, or modify information related to the name of the .NET assembly that holds the code of a component.


Sequence Information for Merge Modules

Sequence Information for Merge Modules (Sequence Subtab)

Sequence tables are added to a merge module only if the merge module needs to modify the sequence tables of the target installation database. Sequence tables specify the order of execution for the standard actions that control the installation process and display the user interface dialog boxes. There are three modes of installation - simple, administrative, and advertised - and two types of sequence tables - execution and user interface. The sequence tables each have three fields: Action, Condition, and Sequence. Merge modules rarely require a user interface and including a UI with a merge module is not recommended. In cases where a user interface is required, the UI tables can be merged into the .msi file the same as other tables.

To view or edit sequence information for a merge module, do the following:

  1. In the tree pane, navigate to the merge module under Software Distribution.

  2. In the list pane, select General.

  3. In the data pane, first click the Sequence tab in the data pane; then click the Install, Admin, or Advertise subtab; and finally click either the User Interface or Execute subtab. You can view, enter, edit or delete the following information:

Action

The Action field names either a standard or custom action or a user defined dialog box or sequence the installer executes.

Condition

The Condition field allows the author to specify a logical expression that controls whether an action or user-defined dialog is executed or displayed. If the Condition field is blank or contains an expression that evaluates to True, the action or dialog is executed or displayed. The action or dialog is skipped if the expression evaluates to False.

Sequence

The Sequence field specifies the order of execution of each action or user-defined dialog in the table.

Base Action

After

This option specifies whether the conditional action will be executed before or after the base action specified above

You can perform the following action on this tab:

  • To add a module sequence entry, click [image]. Enter the required information on the Module Sequence Entry dialog and click OK.

  • To modify an existing module sequence entry, highlight it and click [image]. Edit the desired information on the Module Sequence Entry dialog and click OK.

  • To delete an existing module sequence entry, highlight it and click [image].


Signature Information for Merge Modules

This is the WinINSTALL-generated identifier of the merge module and is associated with the GUID (ModuleID) that uniquely identifies the merge module. Two merge modules cannot have the same ModuleID unless the merge module is entirely backward compatible with its predecessor.

This specifies the default language used by the merge module or the designation that the merge module is language neutral and is used to populate the Language column of the ModuleSignature table. In the table, the language identifier is in decimal format, for example, U.S. English is 1033. The language used by the merge module can be changed by applying a transform to the merge module before merging.

This is the version of the MSI schema used to create the merge module and is used to populate the Version column of the ModuleSignature table. In the table, this field contains a string that describes the major and minor versions of the merge module.

Signature Information for Merge Modules (Signature Subtab)

The information on the Signature tab is used to populate the ModuleSignature Table, a required table that contains all the information necessary to identify a merge module. The merge tool adds this table to the .msi file if one does not already exist. The ModuleSignature table in a merge module has only one row containing the ModuleID, Language, and Version. However, the ModuleSignature table in an .msi file has a row containing this information for each .msm file that has been merged into it.

Merge and verification tools check the ModuleSignature table to determine whether all dependency and exclusion requirements are met.

To view or edit signature information for a merge module, do the following:

  1. In the tree pane, navigate to the merge module under Software Distribution.

  2. In the list pane, select General.

  3. In the data pane, click the Merge Module tab in the data pane and then click the Signature sub-tab. You can view, enter, edit or delete the following information:

Module ID

Language

Version

You can perform the following action on this tab:

  • To add a new signature, click [image]. Enter the required information on the Signature dialog and click OK. (A module can have only one signature. You must delete an existing signature before adding a new one.)

  • To modify an existing signature, highlight it and click [image]. Edit the desired information on the Signature dialog and click OK.

  • To delete an existing Signature dialog, highlight it and click [image].


Tables to be Ignored by Merge Modules

Tables to be Ignored by Merge Modules (Ignore Tables Subtab)

When you highlight a Windows Installer merge module in the tree pane, select General in the list pane, click the Merge Module tab in the data pane and then click the Ignore Tables sub-tab, you can view and edit the list of MSI tables that will be ignored by the merge module.

You can perform the following actions on this tab:

  • To add a new table to the list, click [image]. A blank entry will be added to the bottom of the list of tables to ignore, and the cursor will be placed in edit mode within that new blank entry. Enter the name of the table and press Enter to add this table to the list of tables to ignore.

  • To delete a table from the list, highlight it in the list and click [image].

Note: You will not be asked to confirm the deletion.

To continue, click another tab in the data pane or make another selection from the list pane.

To save your entries, click [image] on the toolbar or choose Save from the File menu.


Merge Module Installation Information

Merge Module Installation Information (Merge Module Tab)

When you highlight a Windows Installer merge module in the tree pane, select General in the list pane, and click the Merge Module tab in the data pane, there are three sub-tabs - the Signature sub-tab, the Sequence sub-tab, and the Ignore Tables sub-tab.


Directory Information for Merge Modules

Directory Information for Merge Modules (Directory Tab)

The information on the Directory tab is used to populate the Directory table for the merge module. The Directory table specifies the layout of directories the merge module adds to the target database. A Directory table is required in every merge module.

To view or edit directory information for a merge module, do the following:

  1. In the tree pane, navigate to the merge module under Software Distribution.

  2. In the list pane, select General.

  3. In the data pane, click the Directory tab. You can view, enter, edit or delete the following information:

Directory ID

This is a unique identifier for a directory or directory path, which is used to populate the Directory column of the Directory table. This column can contain the name of a property that is set to the full path of a target directory. If this column contains a property, the target directory takes the name specified in the DefaultDir column and takes the parent directory specified in the Directory_Parent column. If the Directory_Parent column is either null or equal to the value of the Directory column, the Directory column represents a root target directory. Only one root directory may be specified in the Directory table.

Directory Name

This value is the directory's name (localizable) under the parent directory, which is used to populate the DefaultDir column contains. By default, this is the name of both the target and source directories. To specify different source and target directory names, separate the target and source names with a colon as follows:

[targetname]:[sourcename].

If the value of the Directory_Parent column is null or is equal to the Directory column, the DefaultDir column specifies the name of a root source directory. For a non-root source directory, a period (.) entered in the DefaultDir column indicates the directory should be located in its parent directory without a subdirectory. The directory names in this column may be formatted as short filename | long filename pairs.

You can perform the following action on this tab:

  • To add a directory, click [image]. Enter the required information on the Directory dialog and click OK.

  • To modify an existing directory, highlight it and click [image]. Edit the desired information on the Directory dialog and click OK.


Overview of Transforms

A transform is a collection of changes applied to an installation. The Windows Installer applies transforms during an installation, adding or replacing data in the installation database of the base installation package. A transform can add or remove persistent tables in the installation database, and it can modify information in these tables. Transforms cannot modify any part of an installation package that is not in a database table, such as information in the Summary Information Stream, information in substorages, information in nested installations, or files in embedded cabinets.

The Windows Installer registers a list of transforms that must be available during the configuration or installation of a product. If any of these transforms are not available - either locally or from source - the installation will fail.

There are three types of Windows Installer transforms:

  • Embedded Transforms

Embedded transforms are stored inside the .msi file of the package. An advantage of an embedded transform is that it is always available when the installation package is available. Transforms that are not embedded are available to users as stand-alone .mst files. Embedded transforms are represented in the TRANSFORMS property list by prefixing a colon (:) to a specific filename or file path in the list. Embedded transforms are not cached locally because the installer can always obtain the transform from storage in the .msi file. Embedded transforms may be used in combination with secured transforms or unsecured transforms.

  • Secured Transforms

Secured transforms are stored locally on the user's computer in a location where, on a secure file system, the user does not have write access. Such transforms are cached in this location during the installation or advertisement of the package. During subsequent installation-on-demand or maintenance installations of the package, the installer uses the cached transforms.

Secured transforms are represented in the TRANSFORMS property list by prefixing a @ or | symbol at the beginning of the transforms list. If the installer cannot find a secured transform in the local cache during installation or configuration, it then attempts to restore the transform cache from a source. Transforms specified as filenames are restored from the root of the source of the .msi file (Secure-At-Source Transforms). Transforms specified as file paths are restored from the original full path specified by the transforms list (Secure-Full-Path Transforms). When a product is removed locally, all secured transforms for that product are removed locally as well..

  • Unsecured Transforms

By default, transforms that are not secured as described above are unsecured transforms. Unsecured transforms are represented in the TRANSFORMS property list without a @ or | symbol at the beginning of the transforms list. The location where the source for an unsecured transform is saved depends on how the package is advertised or installed - on a per-user or per-machine basis.

    • If the package is installed or advertised on a per-user basis, the unsecured transform source is saved in the Application Data folder in the user' profile.

    • If the package is installed or advertised on a per-machine basis, the unsecured transform source is saved in the %windir%\Installer folder.

When the package is installed for the first time, the installer searches for the transform at the source specified by the TRANSFORMS property or command line string and, if this cannot be found, then searches for the transform at the source of the package next to the .msi file. During subsequent installations, the installer first searches for the transform at the cache location and, if this is unavailable, again searches for the transform at the source of the package next to the .msi file.

Note: You cannot include secured and unsecured transforms in the same transforms list.

What do you want to do?

Embed a transform in a Windows Installer package.

Modify the TRANSFORMS property for a Windows Installer package.

Create a secure transform.


Conflict Assessments

Overview of Conflict Assessment

Conflict Assessment lets you check for potential conflicts between individual packages, between an individual package and the contents of a list file, or between packages and a specified "baseline" configuration. This feature allows you to diagnose potential problems before you actually perform an installation.

To check for potential conflicts, you first define a "conflict assessment" that includes one or more packages and an optional baseline. A baseline defines the theoretical initial state of a machine before any packages are installed, such as the state of a machine with only a particular operating system and a service pack installed. If your conflict assessment includes only packages or packages and a list file, the contents of all the packages are compared to predict whether installation of the packages together will cause conflicts. If your conflict assessment also includes a baseline, the contents of all the packages are compared to each other and assessed to determine whether they cause a conflict when installed on the baseline system.

You create a baseline on the machine with the baseline configuration using the WIBaselineGen.exe utility located in the \bin directory of the WinINSTALL share. You access all other conflict assessment functionality in the console, by selecting the Conflict Assessment node in the tree pane. You create and modify conflict assessments with the Conflict Assessment Wizard. You view conflict assessment definitions and results in the console or on WinINSTALL reports, such as Assessed Packages and Conflict Assessment Results.

Tip: If you plan to use a baseline in a conflict assessment, it is recommended that you first run a conflict assessment that includes only the baseline. This populates the database with all of the information for this baseline, which can be a very time-consuming process. However, once this has been done, using that data in other conflict assessments is much faster.

Note: Conflict assessment data is stored in the WinINSTALL database in a set of tables with the prefix WICA_.

What do you want to do?

Generate a baseline.

Create a Conflict Assessment.

Edit a Conflict Assessment.

Delete a Conflict Assessment.

Run a Conflict Assessment.

View the results of a Conflict Assessment.


Perform Conflict Assessments

Check for Conflicts between Packages

WinINSTALL provides the capability of checking for potential conflicts between individual packages, between an individual package and the contents of a list file, or when one or more packages are installed on a system with a specified "baseline" configuration. This capability, called conflict assessment, lets you diagnose potential problems before you actually perform an installation.

To check for potential conflicts, you must first define a "conflict assessment" that includes one or more packages and an optional baseline. (A baseline defines the theoretical initial state of a machine before any packages are installed, such as the state of a machine with only a particular operating system and a service pack installed.) You then request that the conflict assessment be run. If your conflict assessment includes only packages or packages and a list file, the contents of all the packages are compared to predict whether installation of the packages together will cause conflicts. If your conflict assessment includes a baseline, the contents of all the packages are compared to each other and assessed to determine whether they cause a conflict when installed on the baseline system.

Conflict assessment information is stored in a database and can be viewed in WinINSTALL reports, such as Assessed Packages and Conflict Assessment Results.

What do you want to do?

Create a Conflict Assessment.


Generate a CA Baseline

Generate a Baseline for a Conflict Assessment

You can include baselines as well as packages in conflict assessments. A baseline defines the theoretical initial state of a machine before any packages are installed, such as the state of a machine with only a particular operating system and a service pack installed. You generate a baseline on such a machine, rather than in the console.

To generate a baseline:

  1. From the machine that you want to baseline, explore through the network to a WinINSTALL share.

  2. Under the WinINSTALL share, expand the bin directory.

  3. Navigate to WIBaselineGen.exe and double-click it.

  4. On the WinInstall Conflict Assessment Baseline Generator dialog, specify whether to scan files, registry entries, or both. If you choose to scan files, indicate whether to include .INI file contents and shortcut definitions and specify the top-level folder where the file scan should begin.

  5. A progress bar displays as the baseline is being generated and a message box tells you when generation is complete.


Create a Conflict Assessment

You can create a conflict assessment in three ways:

  1. Select the Conflict Assessment node in the tree pane and select New Assessment from the Conflict Assessments menu.

  2. Select the Conflict Assessment node in the tree pane and click [image] on the toolbar.

  3. Select the Conflict Assessment node in the tree pane and click the New button on the data pane.

The WinINSTALL Conflict Assessment Wizard steps you through the process of creating a conflict assessment. When you click Finish on the last dialog of the wizard, your conflict assessment is saved and displays in the Conflict Assessments tab on the data pane.

What do you want to do?

Use the Conflict Assessment Wizard.


Edit a Conflict Assessment

You can modify a conflict assessment in three ways:

  1. Select the Conflict Assessment node in the tree pane, highlight an existing conflict assessment on the data pane, and select Edit Assessment from the Conflict Assessments menu.

  2. Select the Conflict Assessment node in the tree pane, highlight an existing conflict assessment on the data pane, and click [image] on the toolbar.

  3. Select the Conflict Assessment node in the tree pane, highlight an existing conflict assessment on the data pane, and click the Edit button on the data pane.

The WinINSTALL Conflict Assessment Wizard opens. The existing conflict assessment information is used to pre-populate the wizard dialogs. Edit the information you want to change. When you click Finish on the last dialog of the wizard, your modified conflict assessment is saved.

What do you want to do?

Use the Conflict Assessment Wizard.


Delete a Conflict Assessment

You can delete an existing conflict assessment in three ways:

  1. Select the Conflict Assessment node in the tree pane, highlight the conflict assessment you want to remove on the data pane, and select Delete Assessment from the Conflict Assessments menu.

  2. Select the Conflict Assessment node in the tree pane, highlight the conflict assessment you want to remove on the data pane, and click [image] on the toolbar.

  3. Select the Conflict Assessment node in the tree pane, highlight the conflict assessment you want to remove on the data pane, and click the Delete button on the data pane.

You receive a message asking you whether you are sure that you want to delete the specified conflict assessment. Click Yes to continue the deletion process; click No to cancel it.


Run a Conflict Assessment

You can run a conflict assessment in three ways:

  1. Select the Conflict Assessment node in the tree pane, highlight the conflict assessment you want to run on the data pane, and select Run Assessment from the Conflict Assessments menu.

  2. Select the Conflict Assessment node in the tree pane, highlight the conflict assessment you want to run on the data pane, and click [image] on the toolbar..

  3. Select the Conflict Assessment node in the tree pane, highlight the conflict assessment you want to run on the data pane, and click the Run button on the data pane.

WinINSTALL processes your conflict assessment. Once processing has finished, the results display on a dialog and can be reviewed later by simply clicking a button or menu choice.

Tip: Depending on the number and size of the packages involved and the choices you made when defining the conflict assessment, this may take a long time. Plan this for a time when you do not need to use the Console for something else.

What do you want to do?

View the results of a Conflict Assessment that have been run.


Add, Edit, Delete, Run or View Conflict Assessments

The Conflict Assessments tab lets you view the list of currently defined conflict assessments; create, edit, or delete a conflict assessment; run a conflict assessment; or view the results of a conflict assessment that has already been run.

You can perform the following actions on this tab:

  • To create a new Conflict Assessment with the Conflict Assessment Wizard, click the New button. The new Conflict Assessment will be added to the list on the Conflict Assessments tab.

  • To modify an existing Conflict Assessment with the Conflict Assessment Wizard, highlight it and click the Edit button.

  • To permanently delete an existing Conflict Assessment, highlight it and click the Delete button.

  • To run an existing Conflict Assessment, highlight it and click the Run button

  • To view the conflicts detected in a previously-run Conflict Assessment, highlight it and click the Results button.

To open the Conflict Assessments tab:

  1. Highlight the Conflict Assessment node in the tree pane.

  2. The Conflict Assessments tab displays in the data pane. The list of currently scheduled tasks displays on the tab and there are five buttons - New, Edit, Delete, Run, and Results.


Validate a Package

Errors | Report database authoring that causes incorrect behavior. For example, duplicate component GUIDs cause the installer to incorrectly register components.
Warnings | Report database authoring that causes unexpected side-effects or incorrect behavior in certain cases. For example, entering the same property name in two conditions that differ only by the case of letters in the name. Because the installer is case-sensitive, the installer treats these as different properties.
Failures | Report failure of an ICE custom action, often the result of such severe database authoring problems that the ICE cannot even run.
Informational | Messages provide information about an ICE, rather than indicating a database authoring problem. For example, they can provide information about the ICE itself, such as a brief description, or provide progress information as the ICE runs.

  • Name of the ICE that has found an error

  • Date the ICE was created

  • Author of the ICE

  • Date the ICE was last modified

  • Description of the API error causing the ICE to fail

  • Description of the error

  • A warning to the user

  • Name of the database table containing the error or warning

  • Name of the table column containing the error or warning

  • Primary keys of the table containing the error or warning

  • A URL to an HTML file giving debugging suggestions

  • A string that can contain other information

Validate and Repair a Windows Installer Package

You can perform a contextual validation of a Windows Installer package or merge module from within the Console. Internal Consistency Evaluators, or ICEs, scan the selected package for database entries that - while possibly individually valid - may be problematic when viewed as part of the whole database. (Remember that a Windows Installer package is a database.) ICEs are custom actions written in VBScript, JScript or as a DLL or EXE. Some ICEs perform syntactical checks on the database (for example, if one table in the database contains a pointer to a row in another table, does that row exist?). Other ICEs perform semantic checks that look at database relationships in a broader view.

ICEs are stored in a special .msi database called a .cub file. WinINSTALL includes four .cub files to use when performing a validation - darice.cub, logo.cub, xplogo.cub, and mergemod.cub. The darice.cub file contains the ICEs used to validate Windows Installer packages. Logo.cub and xplogo.cub are subsets of darice.cub. The mergemod.cub file contains the ICEs used to validate Windows Installer merge modules. When you validate a package in WinINSTALL, you can use these standard .cub files, or you can create your own.

WinINSTALL ICE validation merges the .cub file and your database into a third, temporary database. The Windows Installer displays warnings, errors, debugging information, and API errors as it executes each ICE in the .cub file. When the installer finishes executing the ICEs, it closes the .msi file, .cub file, and temporary database without saving any changes. The .msi file and .cub file remain unchanged by the validation test.

When you perform a validation, four types of messages may be returned.

An ICE message commonly returns a range of information.

Tip: You only need to validate those Windows Installer packages that you create when you repackage a non-MSI application using Discover. Vendor-supplied MSI applications should not be validated as the vendor-supplied MSI should be guaranteed to work in the form distributed.

What do you want to do?

Validate an MSI package.

Have WinINSTALL automatically repair an MSI package.


Repair a Windows Installer Package

Once you have validated a Windows Installer package or merge module, you can select ICE errors that you want WinINSTALL to repair automatically. If repair is possible, WinINSTALL will do so; if not, you will be notified that repair is not possible.

To repair a validated package, open the MSI Package Validator dialog, select the ICE error that you want repaired, and click Repair.


Validate a Windows Installer Package

To validate a Windows Installer package:

  1. In the tree pane, expand the Software Distribution node and the Software Distribution Lists sub-node.

  2. Navigate to the Windows Installer package that you want to validate and do one of the following:

    • Right-click the package and choose Validate Package from the pop-up menu.

    • Choose Validate Package from the Actions menu on the menubar at the top of the screen.

  3. On the MSI Package Validator dialog, select the .cub file to use for validation, select specific ICEs if you want, and click Go.

Note: Performing a validation does not alter the package or the merge module being validated or the .cub file containing the ICEs.


  1. Expand the Software Distribution node in the tree pane and navigate to an MSI package. Expand the package and select a feature within it.

  2. Select General in the list pane and click the Advanced tab in the data pane.

  3. Under Advertising in the middle of the Advanced tab, click the check box for Favor Advertising.

  4. Click [image] from the toolbar or choose Save from the File menu to save the changes you made to the package.

  5. When this package is chosen for installation, a shortcut rather than the application itself will be installed. The application will not actually be installed until the first time that the user tries to use the shortcut.

Advertise Packages for Distribution

WinINSTALL allows you to modify an application installation package so that when the package is processed, the product is simply ”advertised” to the user and is installed only when the user seeks to start it. ”Advertising” is sometimes called "just-in-time" installation. With this type of installation, a product itself is not actually installed, but the user is given certain "advertisements” that the product exists and is available. Perhaps an icon is displayed on the desktop, or perhaps the product is in the Start menu. When the client clicks the icon or asks to run the product from the menu, the application is installed at that time. This lets the administrator avoid saturating the network by distributing software on demand rather than distributing it to too many machines at once.

What do you want to do?

Prepare a Windows Installer package for 'just-in-time" installation.


Reports

Reports let you view information in the WinINSTALL database in useful and meaningful ways. There are a number of categories of reports, all but one of which come with ready-to-use reports for a specific functional area of the product and one (Custom) that is intended for reports you create with Crystal Designer.

Conflict Assessment

Console

Software Distribution

Custom

The data that displays in the reports is dependent upon the database to which the Console is connected and the actions that have been performed in the console. For example, some Conflict Assessment reports require that Conflict Assessments have been created and others require that they have also been run. Console reports require that machines have been added to the Console.

What do you want to do?

C reate a report with Crystal Designer.

Add a report to the Console.

Modify a report.

Delete a report.

Run a report.

Print a report.


Reports

WinINSTALL Reports

WinINSTALL provides a comprehensive set of reports that you can use right out of the box. If you have a licensed copy of Crystal Reports, you can customize these standard reports to reflect your specific needs and environment or you can design and create new Crystal Reports - all from within the WinINSTALL console. WinINSTALL provides reports on such information as:

  • Conflict assessments - assessed packages, assessment results

  • Failures

Users can specify the time period covered by a report - for example, the last 8 hours, the last day, the last week, the last month, etc.


Create a Report

Create or Modify a Report with Crystal Designer

If you own Crystal Reports version 9.0 or higher, you can design and modify reports from within the WinINSTALL Console. To launch Crystal Designer from the Console:

  1. Expand the Reports node in the tree pane.

  2. Click the Designer button on the data pane.

  3. If you have already specified the path to Crystal Designer, it opens. If you did not provide the path to Crystal Designer on the Console Options dialog, you will be prompted to do so now on the Crystal Reports Path dialog.

  4. Crystal Designer opens, allowing you to create and modify reports from within WinINSTALL. After you have created and saved the report, you need to add it to the Console.

Note: You must have a licensed copy of Crystal Designer installed on the Console machine in order to use this feature. The Designer button is active only when you have configured the Console to point to the Crystal reports executable file. (You configure this setting on either the Console Options dialog or the Crystal Reports Path dialog.

What do you want to do?

Add this report to the Console.


Add a Report

Add a Report to the Console

To add a report that you created with Crystal Designer to the Console:

  1. Expand the Reports node in the tree pane and select a report category beneath it. You can add a new report to any report category.

  2. Do one of the following:

    • Click the Add button on the data pane.

    • Click [image] on the toolbar.

    • Select Add Report... from the reports menu.

  3. Enter the required information on the Report Definition dialog.

  4. The new report displays on the data pane, at the bottom of the list of reports in the selected report category.


Edit a Report

Modify a Report

To modify the properties for a report on the Console:

  1. Expand the Reports node in the tree pane and select the report category where the report that you want to modify is located.

  2. Select the report on the data pane.

  3. Do one of the following:

    • Click the Properties button on the data pane.

    • Click [image] on the toolbar.

    • Select Edit Report... from the Reports menu.

  4. Modify the information on the Report Definition dialog.

When you click the report category where you modified the report, the new title and description will display on the data pane (if you changed this information) and the modified report will display when you click the Run button.


Delete a Report

To delete a report that you added to the Console:

  1. Expand the Reports node in the tree pane and select the report category that holds the report that you want to remove.

  2. Select the report on the data pane.

  3. Do one of the following:

    • Click the Delete button on the data pane.

    • Click [image] on the toolbar.

    • Select Delete Report from the Reports menu.

The report no longer displays in the list of reports on the data pane.

Note: You can remove only those reports that you added to the Console. You cannot remove a report provided by WinINSTALL.


List of Reports

List of Ready-to-Use Reports

WinINSTALL comes with a wide variety of reports that are ready to use. They are divided into several functional categories. Some reports prompt for parameters on execution.

Conflict Assessment

Console

Software Distribution

There is also a Custom category that is intended for reports you create with Crystal Designer.


Run a Report

To run a report from the Console:

  1. Expand the Reports node in the tree pane and select the report category where the report that you want to run is located.

  2. Select the report on the data pane.

  3. Do one of the following:

    • Double-click the report.

    • Click the Run button on the data pane.

    • Click [image] on the toolbar.

    • Select Run... from the Reports menu.

The report you selected displays. If the report requires parameters, you will be asked to provide these. Parameters provide a way for you to filter the data that is returned on the report. If you do not specify a value for a parameter, that parameter will be ignored when filtering the data.


Print a Report

To print a report from the Console:

  1. Expand the Reports node in the tree pane and select the report category that holds the report that you want to print.

  2. Highlight the report on the data pane.

  3. Click the Print button.

In order to print a report, a printer must be installed on the Console machine. If you have already done so, the report is printed. If you have not already installed a printer, you receive a message telling that you need to do so.


Working with Reports

The Reports tab in the data pane presents a list of all currently defined reports in a selected report category.

The following information displays for each report in the list:

Name

Description

On this tab, you can create, edit, or delete a report; run or print a report; or launch Crystal Reports Designer if you have a licensed copy.

  • To add a report created with Crystal Designer to the list of reports included with WinINSTALL, click the Add button. Enter the required information on the Report Definition dialog and click OK.

  • To modify an existing report, highlight the report and click the Properties button. Edit the desired information on the Report Definition dialog and click OK.

Note: You cannot modify a report provided by WinINSTALL.

  • To permanently delete a report from the list of reports on the Reports tab, highlight the report and click the Delete button.

Note: You can remove only those reports that you added to the Console. You cannot remove a report provided by WinINSTALL.

  • To run a report, highlight the report and click the Run button.

  • To print a report, highlight the report and click the Print button.

  • To open Crystal Designer directly from within WinINSTALL, click the Designer button.

Note: In order for this button to be active, you must own a licensed copy of Crystal Designer and you must have configured the Console to point to the Crystal Reports executable file, on the Console Options dialog.

To open the Reports tab:

  1. Highlight the Reports node in the tree pane and select a specific report category beneath it.

  2. The Reports tab displays in the data pane.


Diagnostics and Problem Resolution

WinINSTALL provides a wide range of logging capabilities that can help you perform diagnostics and solve WinINSTALL-specific problems. However, you can also use WinINSTALL as a problem resolution tool in a broader sense.

What do you want to do?

Perform diagnostics:

Use information logged by WinINSTALL.

Use WinINSTALL reports.

Use WinINSTALL to resolve problems:

Use special WinINSTALL utilities.


Logging

  • Reflects current WinINSTALL database log entries in the console, for the highlighted machine.

  • Currently logs:

Add list

Edit list

Delete list

Add package to list

Edit package

Delete package

Add machine

Edit machine

Delete machine

Deploy to machine

Add scheduled task

Edit scheduled task

Delete scheduled task

Run task

Add search

Edit search

Delete search

  • Provides a real time look at the remote Windows Event Log for all Application entries with the source of WinINSTALL, by machine.

  • Requires that the console user has the proper network permission &endash; gives a message otherwise.

Logging

Console logging provides an audit trail of Console user activity and has no settings other than whether to log to the database and/or the event log.

Database log

Windows Event Log

What do you want to do?

Choose the type of Console logging to perform.

View the Console log entries.


Console Logging

The Console can log information into the WinINSTALL database, the machine’s Windows Event Log, both, or neither. Console logging provides an audit trail of console user activity.

WinINSTALL Database log

  • Shows the current WinINSTALL database log entries in the console.

  • You have the option of purging this log on demand.

Windows Event log

  • Shows the Windows Event Log for the console machine - for all Application entries with the source of WinINSTALL.

  • You have the option of refreshing this view on demand.

You set Console logging on the Console Options dialog.


Add Binary Dialog

Enter the fully-qualified UNC filename of the binary file used in the custom action or click [image] to browse for the file.

1. Select an MSI package in the tree pane.

2. Click General in the list pane.

3. Click the Advanced tab in the data pane.

4. Click the Custom Actions sub-tab in the data pane.

5. Open an existing entry or click the new icon.

6. On the Source Type dialog, enter a name and choose anything but Text. Click Next.

7. On the Source Storage dialog, choose Binary Table. Click Next.

8. On the Select Binary dialog, click the Add Binary button. Click Next.

Add Binary Dialog

On this dialog, you specify the fully-qualified UNC path to the binary file that will be used in a custom action for a Windows Installer package.

You can add or modify the following information:

File

Click OK to accept this value and continue. Click Cancel to abandon this value and return to the previous screen.

How do I get to this dialog?


All of the files used by a Windows Installer package are stored in the same directory as the .msi file or in a sub-directory beneath it. Since [SourceDir] resolves to the folder in which the .msi file is located, you can accept it or append one or more sub-directories.

Accept [TargetDir] as the location to which the files will be copied when the components are processed or click [image] to browse for a different location on the Select Directory dialog.

Click [image] to select one or more files on the File(s) to Insert dialog. If you change your mind and want to remove a file that you added, highlight it and click

Add Files To Feature Dialog

On this dialog, you can add multiple files to a feature in a Windows Installer package. When you click OK, WinINSTALL automatically creates a separate component for each file that you have selected, sets the keypath of each component equal to its file, and copies all of the files to the specified source location.

Tip: This utility supports the MSI recommended practice of having only one file per component, while saving you the time of having to add and set the key path for each file individually.

You can add or modify the following information:

Source

Target

Files

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Add Row Dialog

On this dialog, you can add a row to an MSI table that you have accessed through the MSI Table Editor dialog. A key graphic to the left of a row name indicates that it is a required field.

Click OK to accept this value and continue. Click Cancel to abandon this value and return to the previous screen.


Add Service Dialog - General Tab

Type the actual name that Windows NT uses to identify the service in the Windows NT registry under the following key:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Services

Select a component from the drop-down list of available components. When this component is installed, the NT service specified above will be installed. (The keypath for this component must be the executable file for the service.)

Enter any command line arguments or properties that are required to run the service.

Select one of the following service types:

  • Win32 Own Process

A Microsoft Win32 service that runs its own process.

  • Win32 Shared Process

A Win32 service that shares a process.

Select one of the following start types:

  • Auto Start

The service starts automatically during system startup.

  • Demand Start

The service starts when the service control manager calls the StartService function.

Select one of the following error controls:

  • Ignore

Logs the error and continues with the startup operation.

  • Normal

Logs the error, displays a message box, and continues the startup operation.

  • Critical

Logs the error if possible and restarts the system with the last-known good configuration. If the error occurs during restart with last-known good configuration, the startup operation fails.

In addition, you can force the installation to fail if it encounters an error by checking the Fail check box.

Add Service Dialog - General Tab

On this tab, you can enter or modify general information about an NT service that will be added to the target system during installation of a Windows Installer component.

Tip: To install this service, the component must have a keypath, and the keypath must be the executable file for the service. (This is required in order to install this service using the MSI InstallService table, which is populated with the information on this dialog.) If you have not specified the keypath and try to add a service, you will receive the message "Component needs to have key path file". To proceed, you must highlight the component in the tree pane, select General in the list pane, and specify the keypath on the Summary tab in the data pane.

You can view, add or modify the following information:

Name

Component

Run Service Arguments

Service Type

Start Type

Error Control

In addition to creating a new NT service, you can import an existing one. Click Import NT Service, and the Import Service dialog displays.

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Add Service Dialog - Options Tab

Enter the name of the NT service that will display on the user interface. This character string can be localized and has a maximum length of 256 characters. (Display names are case-sensitive in the user interface, but case insensitive in display name comparisons.)

This is the name that Windows NT uses to identify the service to the Control Panel\Services screen (or Control Panel\Administrative Tools\Services screen).

Enter the string that names the load ordering group to which this service belongs. The Windows NT registry contains a listing of GroupOrders that a particular service may be a part of. This listing is found under:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GroupOrderList

These groups generally consist of like services. For example, there is a Video group that is made up of services that are all related to Windows NT video configuration.

This setting lets you specify a service or pre-defined group of services that must load before this service. If the specified service or member of the group of services that are defined in this setting fails to start, the service that you are installing with WinINSTALL will not load. You can define either individual services or pre-defined groups of services that must be loaded prior to the service that you are installing. Select one of the following kinds of dependencies:

  • Group

A list of the names of load-ordering groups that the system must start before this service, with each name in the list separated by a Null. (Dependency on a group means that this service can run if at least one member of the group is running after an attempt to start all members of the group.)

  • Service

A list of the names of services that the system must start before this service, with each name in the list separated by a Null.

You can use the icons in the list box to add a new group or service, delete an existing one, or change the order of the groups or service.

Select one of the following kinds of logons:

  • Local System Account

You must use the local system account if you selected Win32 Shared Process as the service type.

  • Domain\Username

You must enter a domain and user name if you selected Win32 Own Process as the service type. When you click this radio button, the two text boxes below become active. Enter <domain name>\<user name> in the top text box and the password for that user in the second text box. The user must have permissions to log on as a service.

When this option is checked, services running under LocalSystem can put up windows, dialogs, etc. Otherwise, services get their own Window Station and can't display anything on the logged-in desktop. The choice made here is used in conjunction with the selection you made for Service Type (whether the service runs as its own process or as a shared process) on the General tab.

If a package containing this option were installed on a Windows 2000 machine, you could verify the setting by going to Control Panel --> Administrative Tools --> Services --> double-click the service --> click the Log On tab. The check box that says 'Allow service to interact with desktop' will be checked.

Add Service Dialog - Options Tab

On this tab, you can enter or modify optional information about NT Services that will be added during installation of a Windows Installer component.

You can view, add or modify the following information:

Display Name

Load Order Group

Dependencies

Log on as

  • Interacts with desktop

In addition to creating a new NT service, you can import an existing one. Click Import NT Service, and the Import Service dialog displays.

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Add Shortcut Bars Dialog

On this dialog, you can add a new shortcut bar to the Console.

You can add or modify the following information:

New bar name

Click the Add button to add the shortcut bar specified above. When you return to the Console, this shortcut bar will now display.

Click the Move button to move the shortcut bar selected above.

Click Done to continue.


Add Value Dialog

On this dialog, you add a new value to a Registry key so that it can be used to modify the Registry on a target system during processing of a package.

You can add or modify the following information:

Value Name

Data Type

Click OK to accept these values and continue.

If the information will be added to or removed from the Registry by a WinINSTALL package or added by a Windows Installer package, the following additional screens display:

  • If the new value has a data type of REG_SZ or REG_EXPAND_SZ, the String Editor dialog displays and you enter the data for the new value.

  • If the new value has a data type of REG_BINARY, the Binary Editor dialog displays and you enter the data for the new value.

  • If the new value has a data type of REG_DWORD, the DWORD Editor dialog displays and you enter the data for the new value.

  • If the new value has a data type of REG_MULTI_SZ, the Multi-String Editor dialog displays and you enter the data for the new value.

If the information will be removed from the Registry by a Windows Installer package, you simply return to the previous screen.

Click Cancel to abandon these values and return to the previous screen.


Choose the Windows Installer version for the package.

Normally, this should not be checked, except in the case of large applications used in an Active Directory environment. One of the major features of the converter is that it does a lot of analysis of the registry information in NAI packages and tries to advertise any COM information it can. This allows legacy applications that don’t support MSI and its benefits (e.g. repair) to be able to be used in that environment. Problems occasionally arise, particularly in Active Directory environments, where the advertising information can cause problems. In Active Directory, the amount of information that can be advertised is limited, and larger applications will usually exceed this limit if they are advertised.

In most cases, this should be checked. The converter can look at each file in a package and see if the file is part of another merge module in the merge module cache. This allows applications to be more compliant with Microsoft (MSI) applications that use merge modules. So, if a file is distributed as part of a Microsoft (or other) merge module, the converter can include that module instead of the individual file. It should be used in most cases, as it prevents conflicts with other applications that distribute the same file.

This options controls how certain components generated automatically by the converter are handled. Normally, the converter creates per-machine components for all files, registry keys, etc. Some objects require per-user components, such as files that go into the user profile, and per-user registry data. In these cases, the converter can either generate components that are per-user, or can generate components that will "float” based on whether the package is installed per-user or per-machine. Generally, you would want to leave this unchecked, but there are some cases where you would want to have the package install only once for the machine, regardless of whether it has per-user data, in which case you would check this option.

Advanced Options Dialog

On this dialog, you can set the schema for a Windows Installer package, suppress advertising of COM registry entries, and suppress auto-discovering of merge modules.

You can view, add or modify the following information:

Schema Version

Suppress advertising of COM registry entries

Suppress auto-discovering of merge modules

Make generated per-user components follow per-user or per-machine installs

Click OK to accept this value and continue. Click Cancel to abandon this value and return to the previous screen.


Advanced Options Dialog

Advanced Options

On this panel, you set optional properties that can prevent certain problems from interfering with the creation of the package. You can also choose to view or edit the data in the patch creation package (.pcp file) from which the patch will be built.

To complete this portion of the wizard:

  1. Check the check-boxes for the conditions that you want to allow - that is, the conditions that you do not want to interfere with the creation of the patch.

  2. If you want to view or edit the data in the patch creation package before the wizard uses it to build the patch, click the View/Edit Tables button.

  3. If you are ready for the wizard to build your patch, click Back.


This is a GUID that identifies the AppID key in the registry.

Enter the name of a server that will be installed on client machines to configure the client to request the object be run at a particular machine whenever an activation function is called for which a COSERVERINFO structure is not specified. This allows client applications to be written without hard-coded server names and then configured by modifying this value for the classes of objects they use.

Enter the name that the installer should use when it configures and registers the DCOM server to run as a local service.

Enter the parameters that will be passed to the service specified above.

Enter the path of the surrogate to be used. This allows DLL servers to run in a surrogate process. If no value is entered, the system-supplied surrogate is used.

When this check box is checked, the installer configures and registers the DCOM server to run on the same machine as the data that it uses. This reduces network traffic, because the object performs local file-system calls instead of calls across the network.

When this check box is checked, the installer configures and registers the DCOM server to run as an interactive user.

AppID Dialog

On this dialog, you can add or modify information used by the Windows Installer to configure and register DCOM servers to:

  • run the DCOM server as a service.

  • run the DCOM server under a different identity than the user who activated the server.

  • Register the DCOM server so that it is activated on a different computer.

You can view, add or modify the following information:

AppID

Remote Server Name

Local Service

Service Parameters

Dll Surrogate

Activate at Storage

Run As Interactive User

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Apply Transforms Dialog

On this dialog, you specify the transforms to be applied to a Windows Installer package and choose settings that will allow you to suppress errors that might prevent a transform from being applied. You also have the option of viewing the changes that a transform would make to a Windows Installer package if it were applied.

Click the Add Files button to browse for transforms that you might want to apply, and display them in the Apply these transforms pane. To apply all of the transforms displayed, click the Select All button. To remove transforms from the list of available transforms, highlight one or more of them and click the Delete button. To select de-selected transforms and de-select selected transforms, click the Reverse button.

Under Suppressed Errors, check any actions that you want WinINSTALL to perform when it applies the selected transforms.

To view the changes that the transforms would make to the package, do the following:

  1. Check the Only View the Transform check box.

  2. Click the Apply Transform button.

Note: This does not actually apply the transform. It is a pseudo-application to let you view the changes that would be made.

  3. Click the View Transform button.

To actually apply the transforms to the package, do the following:

  1. Uncheck the Only View the Transform check box.

  2. Click the Apply Transform button.

Note: The transforms are actually applied to the package, which is permanently changed. You can no longer view the transforms because they have already been applied.


AppSearch and Related Tables Dialog

Enter the identifier that will be used in searching for the file or directory.

searches a system's local hard drives for a file, determines its location, and sets a property to the file's location - so that this property can be used elsewhere in the package. It can also search for a directory or a registry entry.

Enter the property to which the value returned by the AppSearch action will be set. This property can be evaluated in a condition to test for the existence of prior versions of a product.

searches the system's local hard drives for existing files specified by the signature above, as part of compliance checking. The CCPSearch action uses file signatures to validate that qualifying products are installed on a system before an upgrade installation is performed.

searches the system's removable media for existing files specified by the signature above, as part of compliance checking. The RMCCPSearch action uses file signatures to validate that qualifying products are installed on a system before an upgrade installation is performed.

Select either Dir or File to the left of Signature Table. If you select File, click and the Signature Table Entry dialog displays. On this dialog, you author information into the Signature table, which the installer will use to search for the existence of a file signature to ascertain that a particular file is really the file being sought and not another file with the same name. If the search is for a file, there must be an entry in the Signature table; if the search is for a directory, there is no entry in the Signature table.

To add or modify information on the CompLocator table, check the Active check box under Registry Locator Table and click Edit. The Comp Locator Table Entry dialog displays. On this dialog, you author information into the CompLocator table, which the installer uses to find a file or directory using the installer configuration data. When you return to this dialog, the ID of the component that you selected is entered into the ID text box.

To add or modify information on the RegLocator table, check the Active check box under Registry Locator Table and click Edit. The RegLocator Table Entry dialog displays. On this dialog, you author information into the RegLocator table, which the installer uses to search for a file or directory using the registry or to search for a particular registry entry. When you return to this dialog, the registry value that you selected is entered into the text box.

To add or modify information on the IniLocator table, check the Active check box under INI Locator Table and click Edit. The INI Locator Table Entry dialog displays. On this dialog, you author information into the IniLocator table, which the installer uses to search for a file or directory using an .ini file or to search for a particular .ini entry itself. When you return to this dialog, the .ini file that you selected is entered into the File Name text box and, if the search is for a value in the .ini file, that information is entered in the text box below.

To add or modify information on the DrLocator table, check the Active check box under Directory Locator Table and click Edit. The DrLocator Table Entry dialog displays. On this dialog, you author information into the DrLocator table, which the installer uses to find a file or directory by searching the directory tree. When you return to this dialog, the path you entered - relative or absolute - is entered in the Path text box. If you specified a parent directory and a relative path, the parent directory is entered in the Parent text box.

AppSearch and Related Tables Dialog

On this dialog, you enter information that tells the Windows Installer how to search for the existence of files and applications.

You can view, add or modify the following information:

Signature

Search Tables

  • App Search

Property

  • CCPSearch

  • RMCCPSearch

Signature Table Entry

Component Locator Table

Registry Locator Table

INI Locator Table

Directory Locator Table

Click OK to use these values and continue. Click Cancel to abandon these values and return to the previous screen.


From the drop-down list of available components, select the WinINSTALL-generated identifier of the component whose code (EXE or DLL) will be part of the assembly.

From the drop-down list of available features, select the WinINSTALL-generated identifier of the feature whose code - EXE(s) or DLL(s) - will be part of the assembly.

Enter or browse for the file that contains the manifest for the assembly. The manifest is a metadata description of the code or resources inside an assembly. It can reside in one of the EXE or DLL files in the assembly, or it can be in a separate EXE or DLL file that contains only the manifest. If you click [image] to browse for the manifest file, the Open dialog displays.

Enter or browse for the EXE or DLL file that contains the code for the component or feature included in the assembly. If you click [image] to browse for the EXE or DLL file, the Open dialog displays.

If you click this radio button, the assembly will be used on a .NET platform.

If you click this radio button, the assembly will be used on a Windows 32 platform.

Assembly Dialog

On this dialog, you enter or modify information about an assembly, a container object used by the .NET framework to maintain a logical collection of one or more EXE or DLL files containing an application's code and resources. An assembly also contains a manifest, which is a metadata description of the code or resources inside the assembly.

You can view, add or modify the following information:

Component

Feature

File Manifest

File Application

Assembly Type:

  • Net Framework assembly

  • Win32 assembly

Click OK to use these values and continue. Click Cancel to abandon these values and return to the previous screen.


From the drop-down list, select the WinINSTALL-generated identifier of the component whose code (EXE or DLL) will be part of the assembly referenced by the assembly name below.

Enter the name of the assembly associated with the value specified below. The file name of an assembly in the global assembly cache must match the assembly name (not including the file name extension, such as .exe or .dll). Private assemblies deployed only in the root application directory can have an assembly name that is different from the file name. Although the runtime treats assembly names as case-insensitive when binding to an assembly, the recommended practice is to manage assembly names as though they were case sensitive.

Enter the value associated with the name specified above.

Assembly Name Dialog

On this dialog, you enter or modify information about an assembly name. An assembly's name has a significant impact on the assembly's scope and use by multiple applications. Assemblies intended for use by one application only require a name that is unique within the application. Assemblies that are intended to be shared by multiple applications must be signed with strong names using standard public key cryptography. Signing an assembly with a strong name allows the assembly to be deployed in the global assembly cache.

You can view, add or modify the following information:

Component

Name

Value

Click OK to use these values and continue. Click Cancel to abandon these values and return to the previous screen.


Available Actions Dialog

Choose from the following drop-down list:

Built-in Action

Custom Action

Dialog

A list of valid options displays in the Available Actions list box below. Built-in actions are provided for you, but the choices for custom actions and dialogs are those that you have created in the current package. Highlight the option that you want to use.

Warning: Although Custom Action displays as an option when you are adding a sequence entry for the advertisement of a package, MSI does not allow custom actions to be used. If you add a custom action, Windows Installer will ignore it.

A list of available options displays in the Available Actions list box, depending on the selection in the Category drop-down (Built-in Action, Custom Action, or Dialog), above the Available Actions list.

Built-in actions are provided for you, but the choices for custom actions and dialogs are those that you have created in the current package. Highlight the option that you want to use.

When you select a built-in action in the list box above, a brief description of what that action does displays below in the Action Description text box.

Available Actions Dialog

On this dialog, you choose an action that will be one of the terms in a condition that you are creating.

You can add or modify the following information:

Category

Available Actions

Action Description

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Binary Editor Dialog

On this dialog, you enter the binary value for a new registry entry (of type REG_BINARY) that will be added by a Windows Installer package. Click the binary or hexadecimal radio button to see the value in the selected format for editing purposes, and then enter or edit the data.

Click OK to accept this value and continue. Click Cancel to abandon this value and return to the previous screen.


Browse for Folder Dialog

On this dialog, you browse to a folder or directory that you want to select for a particular use.

Click OK to use the folder you have selected and continue. Click Cancel to abandon this folder and return to the previous screen.


Choose Purge Date Dialog

On this dialog, you select a date to be used in purging entries from the WinINSTALL database. All entries for the machine selected in the list pane that were logged to the database before the date you select will be permanently removed from the database log.

Warning: All entries that were logged before the date you select will be permanently deleted.


Class Dialog - General Tab

Select a component from the drop-down list of available components or click [image] to browse for it. This component is part of the feature (specified below) that will be advertised.

Select a feature from the drop-down list of available features. This is the feature that will be advertised.

This GUID is the Class identifier of a COM server.

Select one of the following choices for the server context for the COM server identified by the CLSID above:

  • LocalServer

  • LocalServer32

  • InprocServer

  • InprocServer32

From the drop-down list, select the default in-process handler for the server context specified above.

From the drop-down list, select the default Program ID associated with this Class ID.

Class Dialog - General Tab

The information on this dialog is used to populate the Class table in the MSI database. The Class table contains COM server-related information that must be generated as part of the product advertisement.

You can view, add or modify the following information:

Component

Feature

CLSID

Context

Default Inproc Server

Default Program ID

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Enter a pattern which will be used to determine the appropriate CLSID for a file name when the file is not a storage object. This pattern is stored in the Registry and various bits in the file are matched against it. A pattern in the registry can contain a series of entries of the form:

regdb key = offset, cb, mask, value

The value of the offset item is an offset from the beginning or end of the file and the cb item is a length in bytes. These two values represent a particular byte range in the file. (A negative value for the offset item is interpreted from the end of the file). The mask value is a bit mask that is used to perform a logical AND operation with the byte range specified by offset and cb. The result of the logical AND operation is compared with the value item. If the mask is omitted, it is assumed to be all ones.

Each pattern in the registry is compared to the file in the order of the patterns in the database. The first pattern where each of the value items matches the result of the AND operation determines the CLSID of the file.

If the context specified above is a LocalServer or a LocalServer32, the text entered in this field is registered as the argument against the server and is used by COM to invoke the server.

Enter the localized description associated with the Class ID and Program ID.

Click the Select Icon button to select or modify the icon that will represent the feature that is advertised on the Select Icon dialog. The actual icon displays under Icon to the right of the buttons. To deselect the icon that is displayed, simply click the Clear Icon button

Class Dialog - Options Tab

The information on this dialog is used to populate the Class table in the MSI database. The Class table contains COM server-related information that must be generated as part of the product advertisement.

You can view, add or modify the following information:

File Type Mask

Arguments

Description

Icon

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


This is the file signature that you entered on the AppSearch and Related Tables dialog and it is an external key into the Signature table. You cannot change this value on this dialog. If this signature is present in the Signature table, the search is assumed to be for a file. If this signature is absent from the Signature table, the search is assumed to be for a directory, a registry value, or an .ini value.

Enter the ID of the component whose key path is to be used for the search. It may be the ID of a component belonging to another product installed on the computer.

Specify whether the key path of the component is a file name or a directory. This is a Boolean value - 0 if the keypath is a directory and 1 if the keypath is a file name.

CompLocator Table Entry Dialog

On this dialog, you enter or modify information that the Windows Installer uses to find a file or directory using the installer configuration data.

You must enter or select the following information:

Signature

Component ID

Type

Click Delete to remove these values from the IniLocator table. Click OK to add these values to the IniLocator table. Click Cancel to abandon these values. In each case, you return to the previous screen.


Component List Dialog

On this dialog, you create an association between a component and a directory. When the component is installed, the directory will be created on the target system.

Choose a component from the list and click OK. Click Cancel to return to the previous screen without selecting a component.


Compress Dialog

Specify whether the compressed source file will be internal to the .msi file or external to it.

  • Internal

  • External

Specify whether the compressed source file will be held in one cabinet file or in multiple files.

  • Single

  • Multiple

Specify the maximum size, in bytes, of the cabinet file.

Specify the amount of space, in bytes, that is required for digitally signing the package.

WinINSTALL displays progress messages while a package is being compressed, ending with the message "Finished".

The results of the compression action display, letting you know whether the package was successfully compressed.

Compress Dialog

The source files for a Windows Installer package can be compressed into one or more cabinet files. These cabinet files can be included in the .msi file or external to it. Compressed files are inserted into a standard Cabinet file of the type created by the Makecab.exe cabinet file creation tool.

You can add or modify the following information:

Location of CAB Files

Number of CAB Files

Maximum Cabinet Size (Bytes)

Reserved Space for Digital Signing (Bytes)

Progress

Results

Click Compress to compress the expanded .msi file. Click Close to continue.


Condition Dialog

Choose a category from the following options available in the drop-down list:

Built-in property

Environment value

Integer

Literal

Property Table

To build a condition, choose from the following comparative or logical operators:

< TRUE if left term is less than right term.

<= TRUE if left term is less than or equal to right term.

<> TRUE if left term is not equal to right term.

= TRUE if left term is equal to right term.

> TRUE if left term is greater than right term.

>= TRUE if left term is greater than or equal to right term.

AND TRUE if both terms are TRUE.

Eqv TRUE if both terms are TRUE or both terms are FALSE.

Imp TRUE if left term is FALSE or right term is TRUE.

Not Inverts the state of the following term.

OR TRUE if either or both terms are TRUE.

Xor TRUE if either but not both terms are TRUE.

Choose a category from the following options available in the drop-down list:

Built-in property

Environment value

Integer

Literal

Property Table

When you are building your condition string, you may want to link multiple conditions. After you have built one condition, you can link it to another condition with the following logical operators:

AND TRUE if both conditions are TRUE.

Eqv TRUE if both conditions are TRUE or both conditions are FALSE.

Imp TRUE if left condition is FALSE or right condition is TRUE.

Not Inverts the state of the following condition.

OR TRUE if either or both conditions are TRUE.

Xor TRUE if either but not both conditions are TRUE.

As you create conditions, they display in the condition string text box. When you click Add, the condition string that you have built displays in the Condition String text box. If you have already added a condition, the logical operator you selected is used to join the two conditions.

Condition Dialog

On this dialog, you build a condition in the Condition String text box by selecting terms and operators from the drop-down lists. For each term in the condition, you first select a type of term and then choose from the context-sensitive list of terms that displays below. You choose a conditional operator from the drop-down list and click Add. To include multiple conditions, you must also select a logical operator from the drop-down list before you click Add. Each time you click Add, the resulting condition string displays below.

A condition is built from the following pieces of information:

Type of left operand

Conditional Operator

Type of right operand

Logical Operator

The choices you make about the information above forms the final condition:

Condition String

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Conflict Assessment:

Conflict Assessment: <conflict assessment name> Dialog (split screen)

This screen displays when you are running a conflict assessment. While the assessment is running, the Status: message is "Running". In the top pane, messages display that reflect actions taking place while the conflict assessment is being performed. They are numbered sequentially and fall into one of the following severity types - Informational, Warning, and Error. If the assessment finishes successfully, the Status: message changes to "Completed successfully". If any conflicts are found, the results display in the lower pane; otherwise, the message "No conflicts found" displays. When conflicts are found, the UNC paths to the two packages (or package and baseline) involved in the conflict are listed and beneath them, the messages related to the specific conflicts that were found.

Tip: The first time that a package or baseline is run in a conflict assessment, it takes a very long time because all of the data for that package or baseline must be loaded into the database. The next time that the package or baseline is used, the conflict assessment runs more quickly. The recommended practice is to stock the database ahead of time by running a "dummy" assessment overnight for each baseline or large package. In this way, the time-consuming work is completed before you need to use the package or baseline in an actual assessment.


Conflict Assessment:

Conflict Assessment: <conflict assessment name> Dialog (single screen)

On this screen, you view the results of a conflict assessment that has already been run. If any conflicts were found, the results display in the lower pane; otherwise, the message "No conflicts found" displays. When conflicts are found, the UNC paths to the two packages (or package and baseline) involved in the conflict are listed and beneath them, the messages related to the specific conflicts that were found.


Console Options Dialog

Specify whether Console activity should be logged to the Windows Event Log, the WinINSTALL database, or both.

  • Log to Windows Event Log

  • Log to Database

Browse to or enter the fully-qualified UNC path to the WinINSTALL Share pointed to by the Console. This share will determine the data that displays in the console.

If you want to use Crystal Designer from within WinINSTALL, enter the path to a licensed Crystal Reports executable file (crw32.exe) or browse to it on the Crystal Reports Path dialog.

Choose Database

Choose the database with which the Console will be associated. The data in this database will display in any console connected to the current share.

Connection String

Allows you to view the full connection string to the database.

Command Timeouts
Allows you to configure database command timeouts for deleting machines and purging the database log.

Console Options Dialog

On this dialog, you configure the Console, including the following selections:

You specify the database to which the console will be connected and whose contents will display in the console.

Warning: Console database connection information is stored on the share and used by any console accessing that share. So if you change the database you are viewing in the console, you are changing the database being viewed by any console connected to that share.

Here you can also choose whether to log Console events to the Windows Event Log, the WinINSTALL database, both, or neither. If you own a copy of Crystal Reports Designer and want to be able to access it directly from the Console, you can specify the full UNC path to the executable file here.

You can view, add or modify the following information:

Logging

WinINSTALL Share

Crystal Reports Designer Path

Database

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


A given access right is assigned to either an NT user or group. The currently logged-on user of the console will have not only the access rights granted specifically to him or her, but will also inherit any access right given to groups of which (s)he is a member. Menus, toolbars, and console tree nodes are not directly affected by the access rights of the user. In other words, menu commands are not enabled or disabled based on security. Instead, when a user attempts to perform an action for which (s)he does not have the proper rights, an error message appears indicating that fact.

Console Security Dialog

On this dialog, you can grant access rights to users and groups for specific WinINSTALL activities. This provides an administrator with more granular control over the rights of users.

To set WinINSTALL access rights, select the View menu, choose Security... and the select an activity in the Features list and click the Configure button. On the feature Permissions dialog, you can add or remove users, machines and groups and set or modify their permissions for the selected activity.

Activities for which you can set access rights include:

  • Administrative

  • Conflict Assessment

  • Packaging

For each activity identified, the currently logged-on user of the console must have the proper access right(s) assigned in order to perform the specific tasks of that activity.

Click OK to accept these values and continue.


Control Options Dialog

Enter the name of the NT service for which you are specifying control information.

Enter a list of arguments to be passed to the service specified above. Separate the arguments by null characters [~].

If you check this check box, the installer will wait until the service has finished before proceeding with the installation.

Select a component from the drop-down list of available components. When this component is installed, the NT service specified above will be installed. (The keypath for this component must be the executable file for the service.)

Specify whether the service will be started, stopped or deleted during installation:

  • Start during the StartService action

  • Stop during the StopService action

  • Delete during the DeleteService action

Specify whether the service will be started, stopped or deleted during an uninstall:

  • Start during the StartService action

  • Stop during the StopService action

  • Delete during the DeleteService action

Control Options Dialog

On this dialog, you can enter or modify System Service control information, such as the arguments passed to the service or whether to start, stop, pause, or delete the service.

You can enter or modify the following information:

Service Name

Arguments

Wait until the service completes before proceeding

Component

Actions taken during installation

Actions taken during uninstall

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Create Application List Dialog

On this dialog, you specify the full UNC path to the filename of a new application list that you will create and provide a description that will identify the list in the console.

Click OK to accept these values and continue. The new list will now be available under the list where you added it. Click Cancel to abandon these values and return to the previous screen.

Note: If you enter only a filename for the list file, you will receive a message telling you to "Please enter a description." If you click OK, WinINSTALL will automatically use the filename as the description. Accept or change the description and click OK again.


Create Package Dialog

On this dialog, you specify the full UNC path to the filename of a new package that you will create and provide a description that will identify the package in the console.

Click OK to accept these values and continue. The new package will now be available under the list where you added it. Click Cancel to abandon these values and return to the previous screen.

Note: If you enter only a filename for the package, you will receive a message telling you to "Please enter a description." If you click OK, WinINSTALL will automatically use the filename as the description. Accept or change the description and click OK again.


Crystal Reports Path Dialog

On this dialog, you specify the path to the executable file for Crystal reports Designer.

Enter or browse to the location where the licensed executable file for Crystal reports (crw32.exe) is located.

Click OK to accept this value and continue. Click Cancel to abandon this value and return to the previous screen.


Data Source Dialog

Enter a short textual description of the data source. This value cannot be localized.

Enter a short textual description of the driver. This value cannot be localized.

From the drop-down list of available components, select the component whose installation requires the use of the data source and driver described above. This is a GUID which is an external key into the Component table.

Select the way in which the ODBC data source will be registered for the component specified above:

  • Per Machine

  • Per User

To add a new attribute for an ODBC driver, click [image] and enter the name of the new attribute on the line that displays in the list box. To delete an existing ODBC driver attribute, highlight the attribute in the list box and click [image]. To move an attribute up in the list, highlight it and click the up arrow. To move an attribute down in the list, highlight it and click the down arrow.

Enter or modify the localizable string value of the attribute highlighted above.

Data Source Dialog

On this dialog, you add or modify information about the ODBC data sources that will be installed on the target system during installation.

You can add or modify the following information:

Data Source Description

Driver Description

Component

Registration

Attribute Names

Attribute Value

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


This is the long filename of the file for which the keypath is a primary key into the Files table.

This is the short filename of the file for which the keypath is a primary key into the Files table.

This is the size of the file for which the keypath is a primary key into the Files table.

This is the version of the file for which the keypath is a primary key into the Files table.

These are the attributes of the file for which the keypath is a primary key into the Files table.

This is the language of the file for which the keypath is a primary key into the Files table.

This is the target directory of the file for which the keypath is a primary key into the Files table.

Define Keypath Dialog - Files Tab

On this dialog, you enter or modify information about the keypath that identifies a component - when the keypath you are creating or modifying is a primary key into the Files table.

You can view, add or modify the following information:

Long Filename

Short Filename

Size

Version

Attributes

Language

Target Directory

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Define Keypath Dialog - Registry Add Tab

On this dialog, you enter or modify information about the keypath that identifies a component - when the keypath you are creating or modifying is a primary key into the Registry table.

You can view, add or modify the following information:

Value

Type

Data

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Enter the identifier for the merge module that must be merged with the highlighted merge module.

Select the GUID (Globally Unique Identifier) for the merge module that must be merged with the highlighted merge module.

If you choose, select a particular language to further identify the module that must be merged with the highlighted merge module.

If you choose, select a particular dialect of the specified language to further identify the module that must be merged with the highlighted merge module.

If you choose, specify a particular version to further identify the module that must be merged with the highlighted merge module.

Dependency Dialog

On this dialog, you specify a merge module that must be merged with the highlighted merge module in order for the Windows Installer package to install properly. This provides a way to document dependencies between two merge modules. You can further refine the dependency by specifying the language, the dialect, or a particular version.

You can view, add or modify the following information:

Required Module ID

Required GUID

Required Language

Dialect

Required Version

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Dialog:

Dialog: <dialog name> Dialog

On this dialog, you can create a dialog box that will display during installation of a Windows Installer package. This design screen has menus similar to those used by other dialog design products, such as Visual Basic.

Click the Options button to configure the screen settings on the Options dialog. Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Dialog Properties Dialog

WinINSTALL provides the ability to quickly and easily generate a standard Windows Installer user interface, including a customized dialog to prompt the user during an install for a value to assign to a property.

Tip: This property prompt dialog is based on a template MSI file, QueryProperty.msi, found in the \bin directory of the WinINSTALL share. You can modify it or click the Advanced Options button to replace it with another, if you would like to customize it to better suit your environment.

To access the simple GUI/user prompt feature, click the Simple GUI button on the Dialogs tab. The Dialog Properties dialog will appear, allowing you to add as many property prompt dialogs as you like.

The Dialog Properties dialog allows you to set the name of the property, a description to appear at the top of the page when it’s shown to the user during an install, and a prompt to appear just above the text box provided for the user’s input.

The Dialog Properties dialog lists all existing user prompt dialogs, sorted by property, in the Properties list box. Selecting a listed property will display the existing values for that property’s prompt dialog Page Description and Prompt.

  • To add a user prompt dialog, click the Add button. The Dialog Property dialog will appear, allowing you to enter the necessary information: Property, Page Description, and Prompt.

  • To modify a user prompt dialog, select the desired property in the list and click the Modify button. The Dialog Property dialog will appear, allowing you to modify the Property, Page Description, and Prompt.

  • To delete a user prompt dialog, select the corresponding property in the list and click the Delete button.

  • To specify a different source GUI file on which to base the property prompt dialog, click the Advanced Options button. (The default source GUI file is the supplied QueryProperty.msi, found in the \bin directory of the WinINSTALL share).

When you click OK on this dialog, and then save the MSI file, WinINSTALL generates a number of user interface dialogs for the MSI file. You can edit these dialogs as desired.

Note: The dialogs are not created until you save the .msi file.


Digital Signing Table Dialog

Digital Signing Tables Dialog

Digital Signature Support is a security feature that lets you embed into a Windows Installer package a certificate of authenticity, along with a checksum or Cyclic redundancy Check (CRC) data on the package itself. The recipient can be assured that no one has tampered with the package.

Tip: This option is available only for compressed MSI packages that have an external cabinet file.

Using this dialog, you can extract the digital signature from the package's external cabinet files. The digital signature, file hash, and timestamp information for each cabinet file are then included within the following MSI tables:

  • MsiDigitalSignature

  • MsiDigitalCertificate

To use the Digital Signing Tables dialog, you must first compress the MSI file. Select the MSI file and use the Compress command to compress the source files into one or more external cabinet (CAB) files. Then, select the MSI file and choose the Signing Tables command.

The Digital Signing Tables dialog has the following features:

  • The external cabinet files associated with the package appear in the list. A check mark in the first column indicates the signature has been extracted to the MSI file. A red “X” in the first column indicates the signature has not been extracted, but is available. No state bitmap in the first column indicates the cabinet file has not been signed.

  • To extract the signatures from the cabinet files to the MSI file’s signing tables, click the Extract button. The signatures, file hashes and timestamp information are then stored in the MSI file’s signing tables.

  • To remove the digital signing information from the MSI’s file tables, click the Clear button.


Directory (2) Dialog

Select the directory on the target system that will be associated with the component specified below.

From the drop-down list, choose to Create New Component, Browse for Component, or select a specific component.

For packages, you must select the feature with which the component specified above will be associated. This option is grayed out for merge modules, which do not have features, but only components.

Click this button to set permissions.

Directory Dialog (MSI Directory Table)

On this dialog, you select a directory on the target system that is associated with the installation of a specific component of a package or merge module. This makes an entry in the Directory table.

You can view or modify the following information:

Directory

Component

Select a feature for the new component

Permissions ...

Click OK to use these values and continue. Click Cancel to abandon these values and return to the previous screen.


Directory Dialog

Enter the full path to the directory in which the new folder will be created during installation or click [image] to search for the directory on the Select Directory dialog.

Select a component from the drop-down list of available components. When this component is installed, the folder specified above will be created on the target system.

Directory Dialog (Target Directory)

On this dialog, you select a directory on the target system where a folder will be created when a specified component is installed.

You can view or modify the following information:

Target

Component

Click OK to use these values and continue. Click Cancel to abandon these values and return to the previous screen.


Discover Dialog

On this dialog, you can run the Discover wizard remotely from the console and you can specify arguments to be passed to the Discover executable.

You can accept, add or modify the following information:

Executable

Arguments

Click OK to accept these values and continue. The Discover Wizard will display. Click Cancel to abandon these values and return to the previous screen.


Enter a short textual description of the ODBC driver. This value cannot be localized.

From the drop-down list of available components, select the component whose installation requires the use of the ODBC driver described above.

From the drop-down list, select the dynamic link library (DLL) file that contains the ODBC driver software program.

From the drop-down list, select the setup file that is used to install the ODBC driver.

To add a new attribute for an ODBC driver, click [image] and enter the name of the new attribute on the line that displays in the list box. To delete an existing ODBC driver attribute, highlight the attribute in the list box and click [image]. To move an attribute up in the list, highlight it and click the up arrow. To move an attribute down in the list, highlight it and click the down arrow.

Enter or modify the localizable string value of the attribute highlighted above.

Driver Dialog

On this dialog, you add or modify information about the ODBC drivers that will be installed on the target system during installation.

.You can view, add or modify the following information:

Driver Description

Component

DLL File

Setup DLL File

Attribute Names

Attribute Value

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


This is the file signature that you entered on the AppSearch and Related Tables dialog and it is an external key into the Signature table. You cannot change this value on this dialog. If this signature is present in the Signature table, the search is assumed to be for a file. If this signature is absent from the Signature table, the search is assumed to be for a directory, a registry value, or an .ini value.

Enter the signature of the parent directory of the file or directory specified by the signature above. If this field is null and the Path specified below is not a full path, then all the fixed drives of the user's system are searched by using the value entered in Path.

Enter the path to use in searching the user's system. This can be either a full path or a relative sub-path below the Parent directory specified above.

Select the number that shows how many levels down - from the path specified above - the search for the file or directory should go. This value is based on zero and is assumed to be zero if no value is entered.

DrLocator Table Entry Dialog

On this dialog, you enter or modify information needed to find a file or directory by searching the directory tree.

You must enter or select the following information:

Signature

Parent

Path

Depth

Click Delete to remove these values from the IniLocator table. Click OK to add these values to the IniLocator table. Click Cancel to abandon these values. In each case, you return to the previous screen.


Select a component from the drop-down list of available components. When this component is installed, the file selected below will be duplicated. Each component is represented by a unique GUID.

Select the name of the file that will be duplicated during installation from the drop-down list of available files. Since the DuplicateFiles action creates a copy of a file that is being installed, only files that are being added will appear on this drop-down list.

Enter the name of the duplicated file as it will appear on the target system or click [image] to browse for a file name on the Open dialog.

Enter the shortened form of the duplicated file name as it will appear on the target system or click [image] to browse for a short file name on the Open dialog.

Enter the full path to the folder in which the duplicated file will be copied during installation or click [image] to search for the folder on the Select Directory dialog.

Duplicate File Dialog

On this dialog, you specify the name of a file that is being added to the target system during installation and tell the installer to duplicate this file on the target system and store it in a specified location.

You can view, add or modify the following information:

Component

File

Destination Name

Short Destination Name

Destination Folder

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


DWORD Editor Dialog

On this dialog, you enter the value for a new registry entry (of type REG_DWORD) that will be added by a Windows Installer package. Click the binary, decimal, or hexadecimal radio button to see the value in the selected format for editing purposes, and then enter or edit the data.

Click OK to accept this value and continue. Click Cancel to abandon this value and return to the previous screen.


Edit Shortcut Bar Names Dialog

On this dialog, you can give a new name to a shortcut bar that you have added.

Click Exit to continue.


Edit Transform Dialog

On this dialog, you specify the UNC path to a transform associated with a Windows Installer package that is highlighted in the Tree pane of the Console.

Click OK to accept this value and continue. Click Cancel to abandon this value and return to the previous screen.


Embed/Unembed Transform Dialog

Embed/Unembed Transforms Dialog

On this dialog, you specify the transforms to be embedded in the Windows Installer package highlighted in the tree pane of the Console.

Tip: Embedding a transform in a package makes sure that the transform is always available when the package is run. If the transform is very large, however, or if you have a number of transforms for a single package, you might prefer not to embed them. in such a case, you can provide them to your users as individual .mst files.

Transforms

Add Transforms

When you click this button, you can browse to a transform (.mst) file that you want to add. You can add multiple transforms.

Refresh Original

When you click this button, the list of transforms returns to the list that originally displayed when you opened the dialog.

There are several ways to choose the transforms that you want to embed from the list. You can:

    • Click Select All to embed all of the transforms.

    • Click Reverse to select all de-selected transforms and de-select all selected transforms.

    • Click Delete to remove a transform from the list.

Embed ID

Enter an identifier for the transform or accept the default provided. The identifier must have an ID data type.

When you enter the information above, the Embed/Unembed button becomes active. Click this button and the transforms are embedded or unembedded in the Windows Installer package highlighted in the tree pane. When the process is finished, information displays in the Information text box. To remove this information, click the Clear button.

Click the Close button to return to the previous screen.


Enter License Key Dialog

On this dialog, you can enter a different license key for your WinINSTALL installation when you are upgrading from a demonstration version of WinINSTALL to a full version of the product, or (in certain instances) replacing one licensed version with another licensed version.

The following rules apply when changing the license key:

  • A key with a lower license level cannot be entered. For example, you cannot enter a Software Distribution Suite key or an MSI Packager if you are running the Desktop Management Suite.

  • A demo key cannot be entered. Demo keys can be entered only during setup.

  • With one exception, the feature level (i.e., MSI Packager Professional, Software Distribution Suite) cannot be changed. This must be done via setup by reinstalling the product.

    The single exception to this rule is upgrading from the WinINSTALL Desktop Management Suite to the Lifecycle Management Suite, which can be effected by simply entering a Lifecycle Management Suite license key.

Note: To upgrade from a demo version of WinINSTALL Software Distribution Suite to WinINSTALL Desktop Management Suite or Lifecycle Management Suite, or from MSI Packager Professional to any of the WinINSTALL Suite products, you will need to uninstall and reinstall.

Tip: Changing the license key requires modifying the Discover and Installer executables and cannot be done while they are in use.

Enter your new license key and click OK to continue. Or else click Cancel to return to the previous screen.


Environment Variable Dialog

Enter the name of the environment variable that will be added or modified when the MSI package is processed.

Enter the value that will be used to modify the environment variable specified above.

Select which function will be performed at installation on the environment variable specified above:

  • Set (sets an existing environment variable to a value)

  • Create (creates a new environment variable)

  • Remove (deletes an existing environment variable)

Specify the following attributes for the environment variable specified above:

  • System

Sets the environment variable specified above to a system variable rather than a user variable.

  • Remove on uninstall

Removes the environment variable specified above when the product is uninstalled.

  • Append value to original

Adds the value entered above to the end of the current value of the environment variable during an installation.

  • Prepend value to original

Adds the value specified above to the start of the current value of the environment variable during an installation.

Enter or select the default character that will be used to separate the attributes that will be passed to the installer.

From the drop-down list of available components, select the component whose installation will trigger the actions associated with the environment variable specified above.

Environment Variable Dialog

On this dialog, you can enter or edit information about an environment variable that will be added or modified when the MSI package is installed. An environment variable defines some aspect of a user's environment that can vary and is generally set during the login procedure.

You can view, add or modify the following information:

Variable

Value

Function

Attributes

Separator Character

Component

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Enter the identifier for the merge module that should be excluded from being merged to the same package.

Select the GUID (Globally Unique Identifier) for the merge module that should be excluded from being merged to the same package.

If you choose, select a particular language for which the merge module identified above will be excluded.

If you choose, select a particular dialect of the specified language for which the merge module identified above will be excluded.

If you want to exclude a specific range of versions of the merge module identified above, specify the beginning version of the range that will be excluded.

If you want to exclude a specific range of versions of the merge module identified above, specify the ending version of the range that will be excluded.

Exclusion Dialog

On this dialog, you specify a merge module with which the highlighted merge module is incompatible. This provides a way to document that these two merge modules should not be merged together in the same Windows Installer package. You can further refine the incompatibility by specifying the language, the dialect, or a range of versions.

You can view, add or modify the following information:

Exclusion Module ID

Exclusion GUID

Language

Dialect

Maximum Version

Minimum Version

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Expand Dialog

The compressed source files for an MSI package can be expanded. Compressed .msi files are standard Cabinet files of the type created by the Makecab.exe cabinet file creation tool.

You can see the results of expanding the package:

Click Close to continue.


Export from Windows Installer Dialog

On this dialog, you can select one or more tables from a Windows Installer that you want to export to a text file. You can edit the data in a text editor, such as Notepad, and reimport it.

In the tables pane, choose one table by clicking it, select multiple tables using the CTRL-ALT and SHIFT-ALT keys, or choose all of the tables by clicking the Select All button. Click the Reverse button to select all de-selected tables and de-select all selected tables.

In the path text box, browse for the UNC path to the folder where you want to export the text file.

Click the Export button to create the text file. (This button becomes active after you have selected at least one table and specified the path.) Messages telling you which tables were exported display in the Information pane and the Edit File and Clear buttons become active.

  • If you click Edit File, the text file opens in Notepad. You can make changes and save the file.

  • If you click Clear, the messages in the Information pane are removed.

Click the Close button to close this dialog.


Enter the file name extension being registered (i.e., the extension for which the component specified below will act as a file name extension server). The file name extension does not include the preceding period and can be up to 255 characters long.

From the drop-down list of available components, select the component that defines the registry entries used to register the file name extension specified above.

From the drop-down list of available features, select the advertised feature that provides the file name extension server (i.e., the feature that contains the component providing the file name extension service).

From the drop-down list of available Program IDs, select the Program ID associated with the file name extension specified above.

From the drop-down list, select the MIME content type (expressed in the form of type/format) that is to be written for the extension. An example of a MIME content type for a normal ASCII file is "text/plain".

Extension Dialog - Extension Tab

On this dialog, you enter or change the information that creates an association between a specific file extension and an application, causing the correct application to be launched when a file with a particular file name extension is opened. The information you enter on this tab is required for product advertisement. This information is stored in the Extensions table in the MSI database. Each row in the table generates a set of registry keys and values.

You can view, add or modify the following information:

Extension

Component

Feature

Associated Program ID

MIME Content Type

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


To add a new MIME type, click [image] and type your entry in the outlined box. To delete an existing MIME type, highlight the entry and click [image]. A MIME type consists of a major type and a subtype, or format. For example, the MIME content type for a normal ASCII file is text/plain.

From the drop-down list, select the Class ID of the ActiveX server that can handle files with the file name extension.

Extension Dialog - MIME Tab

On this dialog, you enter or change the information that creates an association between a specific file extension and an application, allowing a file with a particular file name extension to be opened when it is sent across the Internet. For every file extension that you define, you can create a MIME type and, optionally, identify the CLSID of an ActiveX server that can handle files with that extension. The MIME table creates a path between the MIME and Feature table used for advertising features. It does so by associating a MIME context type with a CLSID or file extension. The information you enter on this tab is required for product advertisement. This information is stored in the Extensions table in the MSI database. Each row in the table generates a set of registry keys and values.

You can view, add or modify the following information:

MIME Content Type

Associated Class

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


To add a new verb, click [image] and type your entry in the outlined box. To delete an existing verb, highlight the verb and click [image].

Enter the localizable text string that will display on the context menu. (If this value is left blank, the installer will display the verb in the context menu.)

Enter the argument(s) that will be used on the command line when the command is executed.

Extension Dialog - Verb Tab

On this dialog, you enter or change the information that creates an association between a specific file extension and an application, defining the verb(s) that will be used with this file extension. The Verb table creates an indirect link between the Verb and Features table used for advertising features. It does so by associating command-verb information with the file extensions listed in the Extension table. The information you enter on this tab is required for product advertisement. This information is stored in the Extensions table in the MSI database. Each row in the table generates a set of registry keys and values.

You can view, add or modify the following information:

Verb

Command

Arguments

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Failed Hashes Dialog

This dialog displays a list of all files whose hashes do not match the stored hash value for that file.

Note: Hashing is the transformation of a string of characters into a usually shorter fixed-length value or key that represents the original string. Hashing is performed by applying an algorithm, called a hash function, to several fields of data in a file, including fields not normally used in calculations, such as identifiers. This process turns a variable-sized amount of text into a fixed-size output (hash value), which can then be used to ensure the accuracy of the data it represents. The hash values are stored in the MsiFileHash table of the MSI database and compared with a recalculated hash when appropriate.

You can do the following:

Remove Hash

Retest

Refresh Hash

Click the Close button to continue.


Create a condition that will be evaluated to determine the installation state of the feature. If the condition evaluates to False, the feature is not installed. If the condition evaluates to True, the install level of the feature is set to the value specified below. The installation state of the feature will depend on whether this install level is sufficient to allow installation. Click [image] to create a condition on the Condition dialog.

Enter a numeric value that will be used to set the install level of the feature if the condition specified above evaluates to True.

Feature Condition Dialog

On this dialog, you can create a new condition to be evaluated when the associated feature is included in the set of features to be installed, or you can modify the Install Level associated with an existing condition. The actual installation of the feature associated with the condition depends upon two things - whether the condition evaluates to True and whether the associated install level is sufficient to allow installation.

Every installation package has a default install level, which is an integer value that can range from 0 to 32,767. If the default install level for a feature is less than or equal to the default install level for the package, the feature will be installed. An install level of 0 disables and hides the feature.

You can view, add or modify the following information:

Condition

Conditional Install Level

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


File List Dialog

On this dialog, you select the file whose version string will be used for a versioned file being added to the target system by the Windows Installer.

Highlight a file in the list box and click OK. You return to the previous screen and the file you selected is automatically entered in the Version text box.

Click Cancel to abandon this selection and return to the previous screen.


This is the long version of the name of the file that will be added to the target system. You cannot change this value.

Enter or modify the short version of the name of the file that will be added to the target system.

Click [image] to browse the Select File dialog for a non-localized token that will uniquely identify the file specified above and serve as an external key into other tables.

This is the size, in bytes, of the file that will be added to the target system. This value is calculated automatically and cannot be changed.

Click [image] to browse the File List dialog for the file whose version string will be used for the file specified above, if it is versioned. If the file is non-versioned, this field should be left blank. The file version entered into this field must be the same as the version of the file included in the MSI package. If the version field is set to contain the primary key of another record in the File table, the file referenced by that record will determine the versioning logic for the file specified above.

From the drop-down list of available components, select the component that will control the file specified above.

File Properties Dialog - File Tab

On this dialog, you enter or modify information that is used to search for the existence of a file signature to ascertain that a particular file is really the file being sought and not another file with the same name. On this tab, you enter or modify information about a file that will be added to the target system during installation of the MSI package. The information on this tab is used to populate the File table of the MSI database.

You can view, add or modify the following information:

Long Filename

Short Filename

Binary Path

Size

Version

Component

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


File Properties Dialog - File Hash Tab

On this dialog, you enter or modify information that is used to search for the existence of a file signature to ascertain that a particular file is really the file being sought and not another file with the same name. On this tab, you specify whether to have the Windows Installer use file hashing as a means of detecting and eliminating unnecessary file copying. The information on this tab is used to populate the MsiFileHash table of the MSI database. This tab displays only if there are entries in the FileHash table.

Hashing is the transformation of a string of characters into a usually shorter fixed-length value or key that represents the original string. Hashing is performed by applying an algorithm, called a hash function, to several fields of data in a file, including fields not normally used in calculations, such as identifiers. This process turns a variable-sized amount of text into a fixed-size output (hash value), which can then be used to ensure the accuracy of the data it represents. At any point, the hash value can be recalculated and compared with the original. If any data has been lost or changed, a mismatch signals an error. Windows Installer uses file hashing as a means to detect and eliminate unnecessary file copying, by comparing a file hash stored in the MsiFileHash table with the hash of an existing file on the user's computer.

Hashing is always a one-way operation. There's no need to "reverse engineer" the hash function by analyzing the hashed values. In fact, the ideal hash function can't be derived by such analysis. A good hash function also should not produce the same hash value from two different inputs. If it does, this is known as a collision. A hash function that offers an extremely low risk of collision may be considered acceptable.


File Properties Dialog - Options Tab

If this file is to be authored in multiple languages, this field contains the list of those languages, separated by commas. (In the database, these languages are represented by decimal language IDs, separated by commas.) This field should be left blank if the file is a font file. Font files do not have an embedded language ID resource. This is an optional field.

If this check box is checked, the text box below becomes active. Enter the font name. It is recommended that you leave this text box blank for TrueType Fonts and TrueType Collections because the installer can register the font after reading the correct font title from the font file. If the font name is entered, it must be identical to the font title from the font file. You must specify a title for fonts that do not have embedded names, such as .fon files.

Select one or more attributes from the following list:

  • Read-Only

  • Hidden

  • System

  • Auto Register

  • Vital

A vital file is one that is necessary for the proper operation of the component to which it belongs.

To add security to the file that you are adding, click the Permissions button. The Permissions dialog displays. This allows you to secure individual portions of your application in a locked-down environment.

File Properties Dialog - Options Tab

On this dialog, you enter or modify information that is used to search for the existence of a file signature to ascertain that a particular file is really the file being sought and not another file with the same name. On this tab, you enter or modify information about a file that will be added to the target system during installation of the MSI package. Some of the information on this tab is used to populate the File table of the MSI database, and some is used to populate the Font table and the LockPermissions table.

You can view, add or modify the following information:

Language

Font

Attributes

Security

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Catalog files are used for Windows File Protection. Catalogs are installed if they are associated with a file in a component that is set for local installation or if they are associated with a file being repaired in a locally installed component. To associate a catalog with the file that is being added to the target system, click [image] and the SFP Catalog dialog displays. When you return to this tab after you have added the file, the name of the cabinet file displays in the list box. To remove an existing association between a cabinet file and a file, highlight the cabinet file in the list and click [image]. The name of the cabinet file no longer displays in the list box.

File Properties Dialog - SFP Catalog Tab

On this dialog, you enter or modify information that is used to search for the existence of a file signature to ascertain that a particular file is really the file being sought and not another file with the same name. On this tab, you enter or modify information that will be used by Windows File Protection. This tab displays only if there are entries in the SFPDialog table.

You can view, add or modify the following information:

Cabinet File

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


File(s) to Insert Dialog

On this dialog, you select the file(s) that you want the installer to add when it installs the associated component. Simply navigate to the file, highlight it, and click Open. You return to the Files --> Add tab for the component, and the file(s) you selected now display(s) in the list of files to be added during installation of the component.

Click Open to use the selected file(s) and continue. Click Cancel to abandon the selected file(s) and return to the previous screen.


File(s) to Remove Dialog

On this dialog, you select the file(s) that you want the installer to remove when it installs the associated component. Simply navigate to the file, highlight it, and click Open. You return to the Files --> Remove tab for the component, and the file(s) you selected now display(s) in the list of files to be removed during installation of that component.

Click Open to use the selected file(s) and continue. Click Cancel to abandon the selected file(s) and return to the previous screen.


Generating Hashes Dialog

When you choose to generate a hash for a file that will be installed by a Windows Installer package, the results display on this dialog.

Note: Hashing is the transformation of a string of characters into a usually shorter fixed-length value or key that represents the original string. Hashing is performed by applying an algorithm, called a hash function, to several fields of data in a file, including fields not normally used in calculations, such as identifiers. This process turns a variable-sized amount of text into a fixed-size output (hash value), which can then be used to ensure the accuracy of the data it represents. The hash values are stored in the MsiFileHash table of the MSI database and compared with a recalculated hash when appropriate.

The information on this dialog is read-only. Click Close to continue.


ICE List Dialog

On this dialog, you select the Internal Consistency Error (ICE) checks that you want to use when validating the selected Windows Installer package. All of the ICEs in the evaluation (.cub) file that you chose to use for validation appear in the list.

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Import for Windows Installer Dialog

On this dialog, you can select one or more text files that you want to import into a Windows Installer database.

To create a list of text files that can be imported, click the Add Files button and select one or more files. The files you select display in the Files pane.

To remove a file from the pane, highlight it and click the Delete button.

To select a file to be imported:

  • Choose one text file by clicking it.

  • Select multiple files using the CTRL-ALT and SHIFT-ALT keys.

  • Choose all of the files by clicking the Select All button.

  • Click the Reverse button to select all de-selected files and de-select all selected files.

To edit a file, highlight it and click the Edit File button

Click the Import button to import the information in the text file into the Windows installer table. Messages telling you which files were imported display in the Information pane and the Clear button becomes active.

If you click Clear, the messages in the Information pane are removed.

Click the Close button to close this dialog.


INI File Name Dialog

On this dialog, you can enter or browse for the fully-qualified UNC path to the file name of an initialization file that you want to add to the list of files to be edited when a package is installed. This file is added to the INI Files tab in the data pane, where you can view and modify it if desired.

You can view or modify the following information:

Filename

Click OK to accept this value and continue. Click Cancel to abandon this value and return to the previous screen.


This is the file signature that you entered on the AppSearch and Related Tables dialog and it is an external key into the Signature table. You cannot change this value on this dialog. If this signature is present in the Signature table, the search is assumed to be for a file. If this signature is absent from the Signature table, the search is assumed to be for a directory, a registry value, or an .ini value.

Enter the name of the .ini file that will be used in the search.

If the search will be for an .ini entry itself, enter the name of the section within the .ini file where the entry is located.

If the search will be for an .ini entry itself, enter the value of a key within the section of the .ini file where the entry is located.

Specify whether the .ini value involved in the search is a directory, a file, or raw .ini data.

If the search will be for an .ini entry itself, enter the sequential number of a field in the .ini line. If the value is null or 0, the entire line is read. This must be a non-negative number.

IniLocator Table Entry Dialog

On this dialog, you enter or modify information that is used to search for a file or directory using an .ini file or to search for a particular .ini entry itself.

You must enter or select the following information:

Signature

Filename

Section

Key

Type

Field

Click Delete to remove these values from the IniLocator table. Click OK to add these values to the IniLocator table. Click Cancel to abandon these values. In each case, you return to the previous screen.


Launch Condition Dialog

On this dialog, you can set a condition that must be met in order for installation of the package to take place, and you can associate it with an error message that will display if the condition is not met.

You can view or modify the following information:

Condition

Error Message to be Displayed when Condition is Not Met

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Browse to or enter the UNC path to the Windows Installer package to which the merge module will be applied.

Select the specific feature of the Windows Installer package to which the merge module will be applied.

Browse to or enter the UNC path to the merge module that will be applied.

Browse to or enter the UNC path to the text log file that will be generated during the merge process.

Merge Dialog

On this dialog, you specify the Windows Installer package and feature into which you want to merge a merge module.

Note: You must compress the merge module (MSM file) before you merge it into the Windows Installer package (MSI file).

You can view, add or modify the following information:

MSI File

Feature to Merge into

MSM File

Log File

Click Merge to start the merge process. Click Close to return to the previous screen without performing the merge process.


Module Components Dialog

On this dialog, you select the components that should exist in the highlighted package or merge module. The components listed on this dialog are presented as GUIDs and represent entries in the ModuleComponents table. All of the components in a merge module should have an entry in the ModuleComponents table. After one or more merge modules have been merged into a Windows Installer package, this dialog lets you see which components belong to a given module (as identified by the module signature on the Signature dialog).

Select the components that should exist in the package or merge module. Click OK to accept your choices and continue. Click Cancel to abandon these choices and return to the previous screen.


Enter a number that will determine the point at which the action below will be performed during the sequence of actions that make up the installation. Actions are performed in ascending order.

Click [image] to build the condition on the Condition dialog.

Click [image] to choose an action on the Available Actions dialog.

Click [image] to choose a 'base' action on the Available Actions dialog.

When you choose this option, the conditional action specified above will be executed before the base action specified above.

When you choose this option, the conditional action specified above will be executed after the base action specified above.

Module Sequence Entry Dialog

On this dialog, you can set a condition that must be met in order for an action that is part of the installation of the merge module to take place, and you associate it with a sequence number that determines that action's place in the entire sequence of actions that make up the installation. You also select a 'base action' and specify whether the conditional action should come before or after that base action.

You can view, add or modify the following information:

Sequence Number

Condition

Action

Base Action

  • Action to come before BaseAction

  • Action to come after BaseAction

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Select a component from the drop-down list of available components. When this component is installed, the file selected below will be moved to the specified location.

Enter the name of a file to be moved during installation or click [image] to browse for a file name on the Open dialog.

Enter the shortened form of the name of the file to be moved during installation or click [image] to browse for a short file name on the Open dialog.

Enter the name of the file being moved as it will appear on the target system after installation or click [image] to browse for a file name on the Open dialog.

Enter the shortened form of the name of the file being moved as it will appear on the target system after installation or click [image] to browse for a file name on the Open dialog.

Enter the full path to the folder containing the file to be moved during installation or click [image] to search for the folder on the Select Directory dialog.

Enter the full path to the folder in which the file being moved during installation will be stored or click [image] to search for the folder on the Select Directory dialog.

Move File Dialog

On this dialog, you tell the installer the name and location of an existing file on the target system that should be moved to another location during installation of a component, where to move it, whether to actually move the file from its existing location or simply copy it to another location, and what to name the file that is moved or copied.

You can view, add or modify the following information:

Component

Source Name

Short Source Name

Dest Name

Short Dest Name

Source Folder

Dest Folder

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


MSI Package Validator Dialog

Enter or browse to the \WinINSTALL\Bin directory and select the appropriate .cub file to use in validating the Windows Installer package.

If you want to validate the package against specific ICEs, click [image] and manually select individual ICEs on the ICEs to Run dialog. If you want to validate the package against all of the ICEs in the .cub file, skip this entry.

Check this option if you want informational messages to be displayed, as well as warnings and errors.

ICE02 Circular File/Registry/Component relationships

ICE05 Required Property Validation

ICE08 Duplicate component GUID

ICE09 Permanent component validation

ICE10 Child/parent feature advertising validation

ICE14 Child/parent feature relationship validation

ICE15 MIME/Extension circular relationship validation

ICE16 ProductName length <= 63 characters

ICE18 Null component keypath validation

ICE21 Component/FeatureComponent validation

ICE36 Icon bloat

ICE42 Class Inproc/Local server validation

ICE49 Registry default value type validation

ICE54 Keypath file version indirection validation

ICE55 LockPermissions validation

ICE73 Reserved GUID validation

ICE74 UpgradeCode/FASTOEM property validation

MSI Package Validator Dialog

On this dialog, you specify the .cub file to be used to validate an MSI package. You can also specify that specific ICEs within the .cub file should be used. If no ICEs are specifically selected, all ICEs within the chosen .cub file are run.

You must enter or select the following information:

Evaluation File

ICE's to Run

  • Show Informational Messages

Click the Go button to start the validation scan. Once the scan has been run, the Save Log button is active. Click this button to save the results to a file that can be printed out so that it is easier to go through the list to repair any errors. When you highlight a specific ICE error, the Repair button becomes active if the error can be repaired automatically. WinINSTALL can automatically fix a number of ICE errors. Once WinINSTALL has repaired an error, rerun validation to ensure that the error no longer appears and that no other warnings or errors have been generated.

Click Close to return to the previous screen.

Note: It is not necessary to fix every single warning, but all errors should be fixed.


MSI Table Editor Dialog

If you right-click on a Windows Installer package in the tree view, the context menu presents a choice labeled View/Edit Tables. Making this selection will display the WinINSTALL MSI Table Editor, a facility for viewing and editing the full contents of any Windows Installer package.

This editor is also available from the View/Edit Tables button on the Advanced Options panel of the Patch Wizard. In this situation, the Table Editor displays the intermediate patch creation package (.pcp) file being used to create the patch. Edits entered at this point will be included in the resulting .msp file.

Warning: The WinINSTALL Table Editor does not assure that your changes will not break the package. Because only minimal validation is enforced in the Table Editor, it is strongly recommended that you make changes elsewhere in the Console whenever possible. If you do make changes in the WinINSTALL Table Editor, it is critical that you exercise great care and be certain that you understand the possible implications of any changes you make.

The left column of the Table Editor lists, in alphabetical order, the tables contained in the package. On the right is a grid displaying the rows and columns of the table selected in the list on the left, with values for each field visible and available for edit.

How to Change Values in the MSI Table Editor

To edit a value, click on desired cell and enter the desired changes. Note that validation is minimal--you are not prevented from entering invalid entries or entries which will invalidate other, linked values in other tables.

To add or remove rows, take either of these actions:

  1. Select Add Row or Drop Row(s) from the Edit menu.

  2. Right-click in the grid and select Add Row or Drop Row(s).

How to Save or Discard Changes in the MSI Table Editor

When you have finished your edits, you can choose one of two methods to either save your changes or close the editor without saving your changes.

  1. Select Save or Close from the File menu.

  2. Click the Save button or the Close button at the bottom of the Table Editor dialog.


Multi-String Editor Dialog

On this dialog, you enter the value for a new registry entry (of type REG_MULTI_SZ) that will be added by a Windows Installer package.

Click OK to accept this value and continue. Click Cancel to abandon this value and return to the previous screen.


New AppSearch Data Dialog

On this dialog, you create a new signature for a file. A signature is a unique identifier that the installer uses to locate a file. The value you enter here is used to populate the Signature table of the MSI database and is used as a key into many other tables.

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


New Dialog Dialog

On this dialog, enter the name for a dialog that will display during installation of a package.

Click OK to accept this value and continue. Click Cancel to abandon this value and return to the previous screen.


Open Dialog

On this dialog, you browse for a file. Either double-click the file to select it or highlight the file and click Open. In either case, the file is selected and you return to the previous screen. Click Cancel to abandon the selected file(s) and return to the previous screen.


Options Dialog (Dialog Design)

Options Dialog (Designing a Dialog)

On this dialog, you specify display options for a dialog that will display during installation of a package. You can specify the size of the grid, whether it is active, and whether it is visible. After you have made your choices, click the Apply button to apply them to the dialog you are creating.

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Package File Properties Dialog

On this dialog, you can view the following information about a file:

  • the fully-qualified file name

  • the list file with which the package is associated

  • the date the file was last modified

  • the size of the file

You can change the list file, but all of the other information on this dialog is read-only. Click OK to continue.


Package History Filter Dialog

If you click the Filter button on the MSI Package Advanced tab, Package History sub-tab, the Package History Filter dialog will appear.

On this dialog, you can add a package history filter to select a sub-set of package history entries to display on the Package History sub-tab. If you have added multiple filters, you can also edit or delete existing filters here.

  • To add a filter, click the Add button. The Package History Filter Entry dialog will appear to permit the specification of a filter on the package history entries.

  • To edit an existing filter, select the desired filter in the list and click the Modify button.

  • To delete an existing filter, select the desired filter and click the Remove button.

Note: Package history filters are temporary and are not persisted beyond the current viewing of the selected Windows Installer package.


Package History Filter Entry Dialog

When you click the Add or Modify button on the Package History Filter dialog, the Package History Filter Entry dialog appears. Here you can add or modify the filter to apply to the current list of package history entries on the Package History sub-tab of the MSI Package General -> Advanced tab.

This dialog presents three data fields. The first is the Column drop-down, which enables selection of any of the columns of package history data which are displayed on the Package History sub-tab (Category, Column, Date/Time, Event, etc.)

The second is the Operation field, which offers a selection of operators (equal to, not equal to, greater than, less than, etc.) to connect the selected column with the specified value.

The third field is the Value field, which can vary depending on the column selected in the first drop-down. In most cases this field is a data entry field, where you can type in the value to test for, but in the case of the Date/Time column, this becomes one field each for date and time.

When you click OK, the specified filter (column-operation-value) is saved to the list on the Package History Filter dialog, where you can select from the list of filters and click OK to return to the Package History sub-tab, where the list of entries will now be filtered according to the selected filter.

Note: Package history filters are temporary and are not persisted beyond the current viewing of the selected Windows Installer package.


Browse to or enter the fully-qualified UNC path to the patch (.msp) file that you want to add.

A small update does not change the product version or the product code. You generally perform a small update when you want to make minor changes to a few of the files in a package. One problem with small updates is that there is no efficient way to determine whether the product being used has the original files or the updated files. It is difficult to troubleshoot when the files changed by a small update are files that fix bugs.

A minor upgrade changes the product version, but not the product code. When there are multiple minor upgrades, you must maintain the order in which the separate upgrades will be applied. After you propagate a minor upgrade, you must make sure that you do not inadvertently downgrade an existing version to a lower version. Normally, you control the order in which patches are applied by setting the product version validation bits in the transforms that make up the patch package. However, if you propagate a minor upgrade through a reinstall of the product, you must author into your package the logic that will prevent downgrading.

When you choose this option, you enter the actual command line in the text box below.

Patch Dialog

On this dialog, you select a patch file to apply to a Windows Installer package and specify whether to use the command line for a small update, for a minor upgrade, or a custom command line that you supply.

Enter or specify the following information:

Patch File

Command Line

  • Default command line for a Small Update (REINSTALL=ALL)

  • Default command line for a Minor Upgrade (none)

  • Custom command line

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Permission Dialog

To set permissions for domain users, click the Domain radio button and select a specific domain from the drop-down list of available domains.

To set permissions for machine users, click the Machine radio button and select a specific computer from the drop-down list of available computers.

Select a user or user group from the list of available users and groups.

For the user or group selected above, choose one of the following permissions from the drop-down list:

CHANGE (RWX)

FULL ACCESS
NO ACCESS
READ

Permission Dialog

On this dialog, you set permissions for domain users or machine users.

The following information displays:

  • Domain

  • Machine

User/Group

Permission

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Permissions Dialog (File Install)

On this dialog, you set permissions for users, related to files installed by a package.

  • To set new permissions, click [image]. The Permission dialog displays.

  • To modify existing permissions, highlight an entry and click [image]. The Permission dialog displays.

  • To delete existing permissions, highlight an entry and click [image].

You can view or modify the following information:

Domain

Users

Permissions

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Permissions Dialog (Registry)

On this dialog, you set permissions for users, related to registry changes made by a package.

  • To set new permissions, click [image]. The Permission dialog displays.

  • To modify existing permissions, highlight an entry and click [image]. The Permission dialog displays.

  • To delete existing permissions, highlight an entry and click [image].

You can view or modify the following information:

Domain

Users

Permissions

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Preferences Dialog

On this dialog, you specify whether the package code should be updated when the package is saved. The package code is the unique identifier for a package. The default is for the package code not to be updated (check box unchecked).

  • Update package code when saving changes

Note: In previous versions of the product, the default was for this option to be selected.

In addition, you can also specify whether or not to log the edits to the MSI file to the MSI file's change log table, which can be viewed in the WinINSTALL console as change tracking log.

  • Log MSI changes to the changed MSI package

WinINSTALL can record in the MSI file itself a history of modifications made to the selected package within the WinINSTALL Console. This history of changes is displayed on the General->Advanced Tab->Package History sub-tab for each package. By checking this box, you set the default behavior for any Windows Installer package to log these changes.

Click here for more information on MSI Package History.

Click OK to accept this selection and continue. Click Cancel to abandon this selection and return to the previous screen.


Enter the GUID that identifies the ProgID key in the registry.

From the drop-down list of programmatic identifiers, select the version independent program ID that is used to define the parent of the version dependent program ID specified above.

This is an optional class association. If you entered a value for ProgID Parent above, do not enter a value here. (Class must be null for a version independent ProgID.) If you did not enter a value for ProgID Parent, select from the drop-down list of class associations.

Enter an optional localizable description of the associated program ID.

Click Select Icon to select or modify the icon associated with this ProgID. The actual icon displays under Icon to the right of the buttons. To deselect the icon that is displayed, click Clear Icon. Do not enter a value for version-independent ProgIDs.

ProgID Dialog

On this dialog, you can add or modify information for program IDs and version independent program IDs that must be generated as part of a product advertisement.

You can view, add or modify the following information:

ProgID

ProgID Parent

Class

Description

Icon

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Properties - Add Key (MSI)

Enter the new key that is being added to a section in the .ini file. This value is localizable.

Enter the value to be written to the key specified above. This value is localizable. In INI files, the information within sections takes the form of:

Value=Data

This option creates or updates an .ini entry.

This option creates an .ini entry only if the entry does not already exist.

This option creates a new entry or appends a new comma-separated value to an existing entry.

Properties Dialog (MSI Package - Add INI Key)

On this dialog, you add or modify the properties for a key in an INI file that will be added or edited during the installation of a Windows Installer package.

You can view, add or modify the following information:

Key

Value

Static

  • Add Line

  • Create Line

  • Add Tag

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Properties - Remove Key (MSI)

Enter the new key that is being removed from a section in the .ini file. This value is localizable.

Enter the value to be removed from the key specified above. This value is localizable. In INI files, the information within sections takes the form of:

Value=Data

This option removes an .ini entry.

This option removes a comma-separated value from an existing entry.

Properties Dialog (MSI Package - Remove INI Key)

On this dialog, you add or modify the properties for a key in an INI file that will be removed or edited during the installation of a Windows Installer package.

You can view, add or modify the following information:

Key

Value

Static

  • Remove Line

  • Remove Tag

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Registry Browser Dialog

On this dialog, you specify a registry value that WinINSTALL should use.

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


RegLocator Table Entry Dialog

This is the file signature that you entered on the AppSearch and Related Tables dialog and it is an external key into the Signature table. You cannot change this value on this dialog. If this signature is present in the Signature table, the search is assumed to be for a file. If this signature is absent from the Signature table, the search is assumed to be for a directory, a registry value, or an .ini value.

From the drop-down list, choose the registry hive that contains the key whose value will be searched for or used in the search for a file:

HKEY_CLASSES_ROOT

HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS

For the registry hive specified above, select the key whose value will be searched for or used in the search for a file.

Enter the name of the registry value specified above. (If no name is entered here, the installer will try to use the key's unnamed or default value.)

Specify whether the registry value that will be used in the search is a file name, a directory location, or a raw registry value.

RegLocator Table Entry Dialog

On this dialog, you enter or modify information that is used to search for a file or directory using the registry or to search for a particular registry entry.

You must enter or select the following information:

Signature

Root

Key

Name

Type

Click Delete to remove these values from the RegLocator table. Click OK to add these values to the RegLocator table. Click Cancel to abandon these values. In each case, you return to the previous screen.


This is the fully-qualified file name of the file being removed.

Specify the circumstances under which the fill will be removed:

  • Remove during component install

  • Remove during component remove

  • Remove during component install or remove

From the drop-down list of available components, select the component whose installation or removal will trigger the removal of the file specified above.

Remove Properties Dialog

On this dialog, you specify whether a file that will be removed by the MSI package will be removed when the associated component is installed or removed, or both.

You can view, add or modify the following information:

File Name

Mode

Component

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Remove Shortcut Bars Dialog

On this dialog, you specify a shortcut bar to remove. There must be at least one other shortcut bar. You cannot delete the last shortcut bar.

Remove bar

Click Remove to remove the shortcut bar selected above. When you return to the console, this shortcut bar will no longer exist.

Click Exit to return to the Console without removing the shortcut bar.


Reorder List Dialog

On this dialog, you can change the order in which the packages within a list display in the console. You normally reorder the sequence of the packages in a list file to make it easier for you to locate the packages. Highlight a package and use the up and down arrow keys on your keyboard to move the package up or down in the list.

Click OK to accept this order and continue. Click Cancel to abandon this order and return to the previous screen.


Report Definition Dialog

Choose the category that the new or modified report will belong to:

  • Conflict Assessment

  • Console

  • Custom

  • Inventory

  • Replication

  • Software Distribution

  • WinINSTALL Agent

Enter the name for a new report or modify the name of an existing report. This is the name that shows up on the Reports tab in the data pane.

Enter a brief description of the information displayed in a new report or modify the description of an existing report. This description appears next to the report name on the Reports tab in the data pane.

Browse to the .rpt file for the new or existing report. This should be a UNC path.

Report Definition Dialog

On this dialog, you can create new reports or edit existing user-generated reports.

You can view, add or modify the following information:

Category

Name

Description

File

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Report Parameter Dialog

Some of the reports that are bundled with WinINSTALL require that you specify the value for a parameter. This allows you to customize the information returned by the report. For example, you can specify that you want to see the report information for a particular machine, or you can specify that you want to see all of the machines that meet certain criteria that you specify.

If a report requires only one parameter value, that parameter is referenced in the instructions on the dialog (for example, "Please enter a value for parameter 'Machine Name' ") and the possible values for the parameter are available in the drop-down list. If a report requires more than one parameter, you must highlight each parameter individually and, while it is selected, choose a value for that parameter from the drop-down list below.

To run the report, you must choose a value for each parameter and click OK. To abandon running the report, click Cancel.


Reserve Cost Dialog

This is the GUID that uniquely identifies this component, version, and language.

Enter the number of bytes of disk space to reserve on the local machine if the component is installed to run locally.

Enter the number of bytes of disk space to reserve on the source if the component is installed to run from source.

The Reserve Folder is the name of a property that is the full path to the destination directory where the component will be installed. Generally, this property name is the name of a directory in the Directory table or the name of a property set returned by the AppSearch action. Click one of the radio buttons below:

  • Choose from Directory Table

Click this radio button if the Reserve Folder will be the name of a directory in the Directory table. Click [image] to browse for the directory on the Select Directory dialog .

  • Choose from AppSearch Results

Click this radio button if the Reserve Folder will be the name of a property set obtained using the AppSearch action. If there are selections available, choose from the drop-down list.

Reserve Cost Dialog

The word "cost" is synonymous to "disk space". The reserve cost of an MSI package insures that once the MSI package has finished installing, there will be at least that amount of free disk space left based on the directory specified. This dialog allows you to reserve, or set aside, a specified amount of disk space in any directory that depends on the installation state of a component. You can use this dialog to specify the approximate disk space required for any files, registry entries, or other items that the package might install. Or, you can ensure that a minimum amount of disk space will be available after installation for such things as user documents or files that are created after an application is started.

You can view, add or modify the following information:

Component

Reserve Local in Bytes

Reserve Source in Bytes

Reserve Folder

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Save Transform Dialog

You have two options for how you can save a transform. You can save the transform to a file, or you can save it by embedding it in a package. You can choose one or both options.

File

Enter or browse to the fully-qualified name of the .mst file to which you want to save the transform.

Embed transform in these packages

Add Packages

When you click this button, you can browse to a Windows Installer package (msi file) in which you want to embed the transform. It will be added to the list of packages in the Embed transform in these packages list box. You can add multiple packages.

Add Current

When you click this button, the package that is currently highlighted in the tree pane will be added to the list of packages.

You choose the packages in which you want to embed the transform from the list of packages:

  • Click Select All to choose all of the packages.

  • Click Reverse to select all deselected packages and deselect all selected packages.

  • Click Delete to remove a package from the list.

Validation and Errors

When you click this button, you can provide specific instructions to the installer on how it should handle validation and errors when it applies the transform at runtime. You enter this information on the Validation and Error Suppression dialog.

Embed ID

Enter an identifier for the transform or accept the default provided. The identifier must have an ID data type.

When you enter the information above, the Save button becomes active. Click this button and the transform is saved as indicated by your selections above. When the process is finished, information displays in the Information text box.

Click the Close button to return to the previous screen.


Search and Replace Dialog

Check the check boxes for the tables in which you want replacements made:

  • Edits

  • Registry Entries

  • Shortcuts

  • NT Services

  • Files

  • Advertising

  • All Tables

Enter the value that should be found and replaced.

Enter the replacement value for the instances that are found.

Check this check box if you want the search to take into account whether letters are upper or lower case in searching for matches.

From the menubar:

1. Select a package in the tree view.

2. Click the Edit menu and choose Replace.

Search and Replace Dialog

WinINSTALL can automatically search specified tables in an MSI package, and replace one specified value with another, or it can perform the replacement in all the tables in a package.

You can view, add or modify the following information:

Sections to Search

Replace all occurrences of this:

with this

  • Case Sensitive

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.

How do I get to this dialog?


Select Component Dialog

On this dialog, you can select a component. The components that are listed on this dialog depend on what is selected in the tree pane of the console:

  • If a package is highlighted in the tree pane, all of the components in that package are listed.

  • If a feature is highlighted in the tree pane, all of the components in that feature are listed.

  • If a component is highlighted in the tree pane, only that component appears.

Highlight a component and click OK to select this component and continue. Click Cancel to abandon these values and return to the previous screen.


The list of Available Properties can be thought of as variables that each represent a full path to a directory location. These properties and their associated paths are entries in the Directory table. Select an entry from the list and click OK. The selected property displays in the Short Directory text box.

When you highlight an entry in the Available Properties list, the selected property displays in the Short folder path text box. To add a sub-directory to a directory property, add a backslash to the selected property displayed in the Short folder path text box, enter the sub-directory, and click OK. You must enter a short directory name (8 characters or less).

Select Directory Dialog

On this dialog, you can select a directory property from the list of Available Properties and use it directly, or you can select a directory property and add one or more sub-directories. This list of Available Properties can be thought of as variables that each represent a full path to a directory location. These properties and their associated paths are entries in the Directory table.

You can view or modify the following information:

Available Properties

Short Folder Path

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Select Embedded Transform

Select Embedded Transform Dialog

On this dialog, you can choose a transform that is embedded in the MSI package and have it added to the TRANSFORMS property for the package. The TRANSFORMS property is a list of transforms that the Windows Installer will apply each time the package is installed, advertised, installed-on-demand, or repaired. Highlight the transform(s) that you want to add to the TRANSFORMS property.

Click OK to accept your selection(s) and continue. Click Cancel to abandon your selection(s) and return to the previous screen.


Select File Dialog

On this dialog, you browse for a file. Either double-click the file to select it or highlight the file and click the Open button. In either case, the file is selected and you return to the previous screen. Click Cancel to abandon the selected file(s) and return to the previous screen.


Select Icon Dialog

On this dialog, you select the source file for an icon and view the icon associated with the file.

You can view, add or modify the following information:

Source Icon File

Icon

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


From the drop-down list of available components, select the component to which you want to add a keypath or for which you want to modify the keypath.

The keypath is the value used by the installer to detect the presence of the component. It points to a file or folder belonging to the component and can be a primary key into the File, Registry, or ODBCDataSource table in the MSI database. Click [image] to browse for the keypath. The Define Keypath dialog displays.

The keypath is the value used by the installer to detect the presence of the component. It points to a file or folder belonging to the component and can be a primary key into the File, Registry, or ODBCDataSource table in the MSI database. Click [image] to browse for the keypath. The Define Keypath dialog displays.

Select Keypath Dialog

On this dialog, you specify the file that will be used as the keypath for a component.

You can view, add or modify the following information:

Component

K eypath

Click OK to associate the keypath with the component and continue. Click Cancel to abandon these values and return to the previous screen.


Select Language

Select Language Dialog

Select the language in which the package should be created.

Click OK to use this language and continue. Click Cancel to abandon this language selection and return to the previous screen.


Select Users or Groups Dialog

On this dialog, you select users or groups and give them permissions to perform specific functions in the console. When you select a user group from the drop-down list, the members of that group display below. You can select users either by highlighting them in the list and clicking Add or by typing the name. Multiple names must be separated by semicolons.

Click OK to accept the users you selected and continue. Click Cancel to abandon these selections and return to the previous screen.


Select the WI App List Dialog

Select the WinINSTALL Application List File Dialog

On this dialog, you select the WinINSTALL list file that you want to use.


Enter a number that will determine the point at which the action below will be performed during the sequence of actions that make up the installation. Actions are performed in ascending order.

Click [image] to build the condition on the Condition dialog.

Click [image] to choose an action on the Available Actions dialog. Your choices are built-in actions, custom actions, and dialogs.

Sequence Entry Dialog

On this dialog, you can set a condition that must be met in order for an action that is part of the installation of the package to take place, and you associate it with a sequence number that determines that action's place in the entire sequence of actions that make up the installation.

You can view, add or modify the following information:

Sequence Number

Condition

Action

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


SFP Catalog Dialog

Enter the short file name for the catalog that will be used by the operating system for Windows File Protection. Because catalogs have no version, the catalog specified in this column can overwrite a catalog that has the same name and is already installed on the local system.

Enter or browse for the binary data for the catalog. Click [image] to browse for the file on the Open dialog.

If you check this check box, you add to the list box below the parent of the dependent catalog specified above. Click [image] to add a short file name for the parent catalog.

SFPCatalog Dialog

System File Protection (SFP) is a feature that prevents applications from replacing system files. This feature verifies that protected system files are the correct Microsoft version. If a file is replaced with an incorrect version, the operating system restores the correct version. SFP was introduced in Windows 2000. Earlier versions of Windows allowed applications to replace shared system files during installation. When such changes occurred, users frequently encountered problems that ranged from program errors to an unstable operating system.

In computing, a catalog is a directory of information about data sets, files, or a database. A catalog usually describes where a data set, file or database entity is located and may also include other information, such as the type of device on which each data set or file is stored.

You can view, add or modify the following information:

Catalog Filename

Filename

Select Parent

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Shortcut Dialog - General Tab

Enter the localizable name of the shortcut that will be created. This is the text that will appear below the icon on the user's desktop.

Enter a short form for the name of the shortcut to be created.

From the drop-down list of available components, select the component for which the shortcut is being created. The installation state of this component determines whether the shortcut is created or deleted.

Enter or browse for the full path to the directory where the shortcut will be created. To browse for the directory, click [image] and the Select Directory dialog displays.

Select one of the following choices for the target:

  • Feature

From the drop-down list of available features, select the feature that contains the component whose key file is the file launched by the shortcut. When the shortcut is activated, the installer verifies that all the components in the feature are installed before launching this file.

  • File

Enter or browse for the full-path name of the file that will be launched by the shortcut. To browse for the file, click [image] and the Open dialog displays.

Enter a localizable textual description of the shortcut. This is the text that will be used for the tooltip.

Shortcut Dialog - General Tab

On this tab, you enter or modify general information about a shortcut that will be added during the installation of a component.

You can view, add or modify the following information:

Name

Shortened Name

Component

Create In

Target

Description

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen..


Shortcut Dialog - Icon Tab

Enter the hotkey for the shortcut that will be created or accept the default value of "None" if you don't want to create a hotkey. (A hotkey is a unique key combination, in one of the following valid sequences - [Control][Alt]Character, [Control][Shift]Character, [Shift][Alt]Character, or [Control][Shift][Alt]Character. In general, it is better not to set this option because of the potential for duplicate hotkeys on a user's desktop.

From the drop-down list, select one of the following choices for how the application window should initially display:

Normal

Maximized

Minimized, No Activity

activates and displays a window. If the window is minimized or maximized, the system restores it to its original size and position.

activates the window and displays it as a maximized window.

activates the window and displays it as a minimized window.

Enter the command line arguments for the shortcut.

Enter or browse for the full path to the working directory for the shortcut. To browse for the directory, click [image] and the Select Directory dialog displays.

To specify or modify the icon that will represent the shortcut, select one of the icons displayed under Icon (to the right of the buttons) and click Select Icon. To change the icon that is selected, click Clear Icon.

Shortcut Dialog - Icon Tab

On this tab, you enter or modify icon-related information about a shortcut that will be added during the installation of a component.

You can view, add or modify the following information:

Shortcut Key

Show Command

Arguments

Working Directory

Icon

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Signature Dialog

Enter the identifier for the merge module.

Select the GUID (Globally Unique Identifier) for the merge module.

If you choose, select a particular language to further identify the merge module. For example, if the merge module is intended to be merged only into US English applications, you can make that language setting here. This information can be used by the Exclusions and Dependencies entries to help exclude or include other merge modules by other vendors.

If you choose, select a particular dialect of the specified language to further identify the merge module.

If you choose, specify a particular version to further identify the module that must be merged with the highlighted merge module. As you improve the components of a merge module, you may wish to update the version. This information can be used by the Exclusions and Dependencies entries to help exclude or include other merge modules by other vendors.

If you choose, you can specify particular merge modules with which the merge module identified above is incompatible. These modules should not be installed together in the same package.

  • To add a new exclusion, click [image] and enter the required information on the Exclusion dialog.

  • To remove an existing exclusion, highlight it and click [image].

Note: The information in this list represents data in the ModuleExclusion table.

If you choose, you can specify particular merge modules which must be installed with the merge module identified above in order for the package to install properly.

  • To add a new dependency, click [image] and enter the required information on the Dependency dialog.

  • To remove an existing dependency, highlight it and click [image].

Note: The information in this list represents data in the ModuleDependency table.

Click this button to view the components of this merge module on the Module Components dialog. After you have merged a module into an MSI file, this provides a way of seeing which components belonged to a given merge module signature.

Note: The information in this list represents data in the ModuleComponents table.

Signature Dialog

On this dialog, you enter or modify identifying information about a merge module, as well as exclusions and dependencies. Exclusions help you document which merge modules a given merge module is incompatible with. Dependencies help you document which merge modules must be merged with your merge module for the package to install properly.

Note: The information on this dialog represents data in the ModuleSignature table. Merge modules (MSM files) have only one entry in this table, while Windows Installer packages (MSI files) have a separate entry for each merge module that has been merged into the package.

You can view, add or modify the following information:

Module ID

GUID

Language

Dialect

Version

Exclusions

Dependencies

Components

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Signature Table Entry Dialog

This is the file signature that you entered on the AppSearch and Related Tables dialog and it is an external key into the Signature table. You cannot change this value on this dialog. If this signature is present in the Signature table, the search is assumed to be for a file. If this signature is absent from the Signature table, the search is assumed to be for a directory, a registry value, or an .ini value.

Enter the name of the file associated with the signature specified above.

Enter the minimum and/or maximum version of the file.

  • Min

If you check this check box, then the file specified above must have a version that is at least equal to the value that you enter in the text box that becomes active.

  • Max

If you check this check box, then the file specified above must have a version that is no greater than the value that you enter in the text box that becomes active.

Enter the minimum and/or maximum size of the file.

  • Min

If you check this check box, then the file specified above must have a size that is at least equal to the value that you enter in the text box that becomes active. (This must be a non-negative number.)

  • Max

If you check this check box, then the file specified above must have a size that is no greater than the value that you enter in the text box that becomes active. (This must be a non-negative number.)

Enter the minimum and/or maximum creation date of the file.

  • Min

If you check this check box, then the file specified above must have a creation date that is at least equal to the value that you enter in the text box that becomes active. (This must be a non-negative number.)

  • Max

If you check this check box, then the file specified above must have a creation date that is no greater than the value that you enter in the text box that becomes active. (This must be a non-negative number.)

Enter the languages supported by the file.

Signature Table Entry Dialog

On this dialog, you enter or modify information that is used by the AppSearch action to search for the existence of a file signature to ascertain that a particular file is really the file being sought and not another file with the same name. The information on this tab is used to populate the Signature table of the MSI database. The Signature table holds the information that uniquely identifies a file signature.

You must enter or select the following information:

Signature

File Name

Version

Size

Date

Languages

Clicking the Use Directory button takes you to the AppSearch and Related Tables dialog.

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Specify Merge Module Folders Dialog

Specify Merge Module Folder Dialog

On this dialog, you select the folder that contains the merge module you want to add to the Console. You enter or browse to the UNC path of the folder and give it a description that will display in the console.

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Start Creating Transform Dialog

This dialog explains the process that WinINSTALL uses to create a transform.

Click Yes to begin the process. Click No to return to the previous screen.


String Editor Dialog

On this dialog, you enter the string value for a new registry entry (of type REG_SZ or REG_EXPAND_SZ) that will be added by a Windows Installer package.

Click OK to accept this value and continue. Click Cancel to abandon this value and return to the previous screen.


Summary Information Dialog

The name of the company that created the product being installed by the package. (This is normally set from the Windows Installer Manufacturer property in the Property table.)

The name of the application being installed by the package. (This is normally set from the Windows Installer ProductName property in the Property table.)

The general purpose of the installer database. By convention, it is set to "This installer database contains the logic and data required to install <product name>."

File browsers, such as Windows Explorer, use these values to perform keyword searches for a file. Multiple keywords must be separated by commas.

The package code of the Installer package. (This code is a GUID.)

Identifies how the package should be opened - No restrictions, Recommended read-only, or Enforced read-only.

If you have changed the value of Manufacturer or Comments on the General tab, you will need to click this button to synchronize these changes with the Author and Comments elements in the Summary Information Stream for the Windows Installer package. Otherwise, these values will not be updated. If you do not synchronize the information and, for example, use Orca to edit the .msi file, the ARPComments and Manufacturer properties will not have the same values as the Author and Comments elements in the Summary Information Stream.

Note: This action updates the summary information stream with information in the property table. It does not refresh the property table with information in the summary information stream.

If you have changed the value of Manufacturer or Comments on the General tab, you will need to click this button to synchronize these changes with the Author and Comments elements in the Summary Information Stream for the Windows Installer package. Otherwise, these values will not be updated. If you do not synchronize the information and, for example, use Orca to edit the .msi file, the ARPComments and Manufacturer properties will not have the same values as the Author and Comments elements in the Summary Information Stream.

Note: This action updates the summary information stream with information in the property table. It does not refresh the property table with information in the summary information stream.

Summary Information Dialog

All of the information in the Summary Information Stream of the selected Windows Installer package is displayed. The Summary Information Stream provides the context information for the package. If you right-click an .msi file in Windows Explorer and select Properties, the values that have been authored into the Summary Information Stream display on the Properties dialog.

On this tab, you can view or modify the following information.

Author

Subject

Comments

Keyword

Revision Number

Security

Synchroniz e

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Support Information Dialog

Enter the name of a person or entity that can be contacted for product support.

Enter the telephone number for product support.

Enter the URL for online product support.

Enter the URL for the online help system.

Enter the URL where users can find update information about the product.

Specify how the installer will obtain and/or display the user or company that is the registered owner of the product.

  • Automatic (get from Registry)

The Windows Installer will automatically retrieve the name of the current user from the Registry.

  • Suppress

The Windows Installer will not display this information during installation.

  • Use these values

The Windows Installer will use the values that you enter as the USERNAME property and COMPANYNAME property.

Check this check box if you want the Repair button to appear on the Add/Remove Programs dialog.

Support Information Dialog

On this dialog, you enter the support information that users see when they choose Add/Remove Programs from the Control Panel and select the application installed by the MSI package.

You can view, add or modify the following information:

Contact

Phone

Online Support

Helpfile URL

Update Info URL

Registered User/Company

  • Show Repair Button

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Text File Edits (Add Text) Dialog

Insertion Text Enter new text to be inserted at the beginning of the ASCII file.

Insertion Text Enter new text to be inserted at the end of the ASCII file.

Insertion Text Enter new text to be inserted into ASCII file at the current position.

Insertion Text Enter new text to be inserted into ASCII file before specified text.

Position Text Enter the text in the ASCII file that will be used to determine where to insert new text. When the installer finds this text, it will insert the text in the Insertion Text text box before the text entered here.

Alternative Position Text Enter alternate text in the ASCII file that will be used to determine where to insert new text, if text in the Position Text text box is not found. When the installer finds this alternate text, it will insert the text in the Insertion Text text box before the text entered here.

Insertion Text Enter new text to be inserted into ASCII file after specified text.

Position Text Enter the text in the ASCII file that will be used to determine where to insert new text. When the installer finds this text, it will insert the text in the Insertion Text text box after the text entered here.

Alternative Position Text Enter alternate text in the ASCII file that will be used to determine where to insert new text, if text in the Position Text text box is not found. When the installer finds this alternate text, it will insert the text in the Insertion Text text box after the text entered here.

Replace With Enter new text that will be used to replace existing text in the ASCII file.

Text to be Replaced Enter the text in the ASCII file that will be replaced by new text. When the installer finds this text, it will replace it with the text in the Replace With text box.

Alternative Text to be Replaced Enter alternate text in the ASCII file that will be replaced by new text if the text in the Text to be Replaced text box is not found. When the installer finds this alternate text, it will replace it with the text in the Replace With text box.

Path to be Added Enter new text to be inserted into ASCII file.

Position Text Enter text in ASCII file that will be used to determine where to insert new text.

Alternative Position Text Enter alternate text in ASCII file that will be used to determine where to insert new text, if Position Text is not found.

When this option is selected, if edits are specified for an ASCII file that does not already exist on the target system, Windows Installer will create the file. You specify whether the file that is created should be in ASCII or Unicode format.

  • Create ANSI

  • Create Unicode

When this option is selected, case is taken into consideration when looking for text.

Text File Edits Dialog (MSI Package - Add Text)

On this dialog, you specify text that will be added to ASCII text files during installation of a Windows Installer package.

There are three text boxes at the top of the dialog. Whether or not the text boxes at the top of the dialog are active and their labels depend on the action being taken when text is inserted.

Click each available Action to see the associated active text boxes:

  • Insert at Top of File

  • Insert at Bottom of File

  • Insert at Current Position

  • Insert Before Position Text

  • Insert After Position Text

  • Replace

  • Path Addition

There are two check boxes at the bottom of the dialog:

  • Create this File If Not Found

  • Case Sensitive

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Text File Edits (Remove Text) Dialog

Enter the text (line or path) that will be removed from the ASCII file on the target system.

Enter the text that will determine where the line or path will be removed from the ASCII file on the target system. When WinINSTALL finds this text, it will remove the next instance of the line or path entered in the Removal Text text box.

Enter the alternate text that will determine where the line or path will be removed from the ASCII file on the target system, if the Position Text is not found. When WinINSTALL finds this alternate text, it will remove the next instance of the line or path entered in the Removal Text text box.

When this option is selected, the line containing the specified text (entered in the Removal Text text box and located using the Position Text or Alternative Position Text) will be removed from the ASCII file on the target system.

When this option is selected, the path containing the specified text (entered in the Removal Text text box and located using the Position Text or Alternative Position Text) will be removed from the ASCII file on the target system.

When this option is selected, case is taken into consideration when looking for text.

Text File Edits Dialog (MSI Package - Remove Text)

On this dialog, you specify text that will be removed from ASCII text files during installation of a Windows Installer package.

There are three text boxes at the top of the dialog:

Removal Text

Position Text

Alternative Position Text

There are two choices for Action:

  • Remove Line Containing

  • Remove Path Containing

  • Case Sensitive

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Text File Name Dialog

On this dialog, you can enter or browse for the fully-qualified UNC path to the file name of a file that you want to add to the list of ASCII text files to be edited when a package is installed. You can view and modify this file on the ASCII Files tab in the data pane.

You can view, add or modify the following information:

Filename

Click OK to accept this value and continue. Click Cancel to abandon this value and return to the previous screen.


Transform Property Dialog

On this dialog, you can view the TRANSFORMS property for the Windows Installer package that is currently selected in the tree pane. The TRANSFORMS property is a list of transforms that the Windows Installer will apply each time the package is installed, advertised, installed-on-demand, or repaired. The transforms are represented as paths to the transform files, separated by semi-colons. The transforms are applied in the same order as they are listed in the property. To add or remove transforms from the list or change the order of the transforms, you must return to the Transforms tab and perform these actions using the icons next to the Transforms text box.

Click OK or Cancel to return to the Transforms tab.


Enter a short textual description of the ODBC translator.

From the drop-down list of available components, select the component whose installation requires the use of the ODBC translator described above.

From the drop-down list, select the dynamic link library (DLL) file that contains the ODBC translator software program.

From the drop-down list, select the setup file that is used to install the ODBC translator.

Translator Dialog

On this dialog, you add or modify information about the ODBC translation DLLs that will be installed on the target system during installation. A registry setting points to the DLL, which is called from the ODBC driver. ODBC Translator DLLs allow users to intervene in the normal character-encoding transformation process with some code that can convert characters outside both the driver and the Driver Manager. The primary use for translation DLLs is for converting between the "ANSI" and "OEM" single-byte code pages in MS SQL Server. ( "OEM" is an encoding that essentially corresponds to the MS-DOS code page on your local language version of Windows.)

You can view, add or modify the following information:

Translator Description

Component

DLL File

Setup DLL File

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


TypeLib Dialog

This is the GUID that identifies the type library. There is a separate type library ID for each feature.

Select a component from the drop-down list of available components. This is the component within the selected feature whose key file is the type library being registered.

Enter a textual description of the type library. It can be localized.

Enter the full path to the help file for the type library.

Select a feature from the drop-down list of available features. This is the feature that will be installed or advertised. The feature must be installed for the type library to be operational.

Select the language for the type library from the drop-down list of available languages. To use a default language or be language-neutral, select * from the drop-down list.

If the language you selected has multiple dialects, select one from the drop-down list. If you selected * as the language, choose one of the following:

  • Language neutral

  • System default language

  • User default language

Specify the version of the type library. You can use both major and minor versions.

Enter the amount of space in bytes associated with the registration of the type library.

TypeLib Dialog

The information on this dialog is used to populate the TypeLib table in the MSI database. During installation, the installer writes all type library registration information into the HKEY_LOCAL_MACHINE (HKLM) registry location, for both per machine and per user installations.

You can view, add or modify the following information:

LibID

Component

Description

Help path

Feature to advertise/install

Language

Dialect

Version

Cost (in bytes)

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Update Merge Module Cache Dialog

On this dialog, you add merge modules to the merge module 'cache' that can be used by WinINSTALL when it builds MSI packages or converts NAI packages to MSI packages. Merge modules must be in a folder in order to be added to the 'cache'.

Note: When a merge module is added to the 'cache", the files within that merge module are added to an XML file. When an MSI package is built or converted, WinINSTALL compares these files with the files in the package. When it finds a match, it uses the merge module rather than including the files in the package. This prevents the creation of multiple entries with different GUIDs for the same common components.

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Upgrade Schema Version Dialog

On this dialog, you can change the version of Windows Installer schema for an MSI package. The path to the package, the current schema version, and the language display but cannot be changed. From the drop-down list of available versions, choose the version to which you want to upgrade the package and click the Upgrade button. When the upgrade is complete, the message "Successfully completed" displays in the Results text box and the Upgrade button turns into an OK button. Click OK to continue.

Note: If the Windows Installer package selected is already at the highest available schema version, this menu item will not be available.

How do I get to this dialog?


Validation and Error Suppression Dialog

When the installer processes a package that has a transform, it does not perform any validations by default, but there are a variety of potential errors that can cause the process to fail. WinINSTALL lets you specify particular validations that you would like performed at runtime, and it also lets you specify potential errors that you would like to be overridden at runtime.

Under Validation of transform against package, you can specify that one or more of the following should be validated by checking the check box:

  • Upgrade Codes must match

The UpgradeCode of the package and transform must match.

  • Default Languages must match

The default language of the package and transform must match.

  • Product codes must match

The Product code of the package and transform must match.

If you check the Product codes must match check box under Validation of transform against package, the following additional options become available under Product Version Validation. You can choose only one selection.

  • Compare major versions only

When comparing versions, check the major version only.

  • Compare major and minor versions

When comparing versions, check the major and minor versions.

  • Compare major, minor and update versions

When comparing versions, check the major, minor, and update versions.

Under Suppressed errors, you can specify one or more conditions that might cause problems that you would like the installer to ignore.

  • Ignore additions of existing rows

When manipulating rows, ignore the addition of existing rows.

  • Ignore deletion of missing rows

When manipulating rows, ignore the deletion of missing rows.

  • Ignore addition of existing tables

When manipulating tables, ignore the addition of existing tables.

  • Ignore deletion of missing tables

When manipulating tables, ignore the deletion of missing tables.

  • Ignore changes in missing rows

When manipulating rows, ignore the changing of missing rows.

  • Ignore differences between codepages

When comparing code pages, ignore differences between code pages.

If you check the Product codes must match check box under Validation of transform against package, the following additional options become available under Version Comparison. You can choose only one selection.

  • Transformed version < base version

Ensure that the version of the changed package is less than the version of the original package.

  • Transformed version < = base version

Ensure that the version of the changed package is less than or equal to the version of the original package.

  • Transformed version = base version

Ensure that the version of the changed package is equal to the version of the original package.

  • Transformed version > = base version

Ensure that the version of the changed package is greater than or equal to the version of the original package.

  • Transformed version > base version

Ensure that the version of the changed package is greater than the version of the original package.

Click OK to accept these selections and continue. Click Cancel to abandon these selections and return to the previous screen.


Verify Password Dialog

On this dialog, you confirm the password that will be used by the installer when it adds a service during the installation of a package. Reenter the password that you entered on the Add Service dialog.

Click OK to accept this value and continue. Click Cancel to abandon this value and return to the previous screen.


Enter a descriptive name for the baseline that you are creating. This is the name that will identify the baseline if you browse for it when creating a conflict assessment.

Click [image] to browse for the location where you want to store the baseline that you are generating. Navigate to the file on the Save Baseline as.. dialog.

Specify whether the baseline should include files, registry entries, or both. You must choose at least one of these two. If you include files, you can accept the default directory (C:\) where the baseline generator will begin looking for files or specify a different directory. You can also have the baseline generator include the contents of INI files that it finds and the definitions of shortcut files (which include such things as the shortcut label, the working directory, the hot key, etc.).

  1. From the machine with the baseline system, navigate to WIBaselineGenerate.exe in the bin directory of a WinINSTALL share.

  2. Double-click WIBaselineGenerate.exe.

WinInstall Conflict Assessment Baseline Generator Dialog

On this dialog, you name and define a baseline to be used in a conflict assessment.

You can view, add or modify the following information:

Description

Output File Path

Contents

Note: It is recommended that you accept the default for Contents - to include files, registry entries, INI file contents, and shortcut definitions.

Click OK to accept these values and create the baseline. Click Cancel to abandon these values and return to the previous screen.

How do I get to this dialog?


  1. Click the Console Log node in the tree pane.

  2. Do one of the following:

    • Double-click a log entry on either the Database or Windows Event Log tab in the data pane.

    • Highlight a log entry on either the Database or Windows Event Log tab in the data pane and choose Detail from the Log menu on the menubar.

  3. Use the Up and Down arrows to view other log entries.

WinINSTALL Log Description Dialog

This dialog provides details for the log entry highlighted in the data pane.

The following information displays:

Type The type of log entry:

Informational

Warning

Error

Date The date on which the entry was logged.

Time The time at which the entry was logged.

Category The task that was being performed when the entry was logged:

Console

Note: The only machines with Console entries will be Console machines that have NT Event logging turned on.

Description A brief explanation of the action that caused the log entry.

Click Close to return to the previous screen.

How do I get to this dialog?


This wizard walks you through the process of building a conflict assessment, which lets you check for potential conflicts when specific packages are installed together or when one or more packages are installed on a system with a specified "baseline" configuration.

This wizard creates or modifies a custom action that can be used to extend the built-in functionality of Windows Installer. Once you have created a custom action, you must insert it into one of the sequences in order for it to be executed. Once the custom action is defined, it can be used like any other action in the sequence table.

This wizard walks you through the process of setting up a WinINSTALL database - Microsoft SQL Server, SQL Server 2005 Express Edition, or Oracle.

This wizard helps you make the settings you need to run the WinINSTALL console - the connection to the database whose data the console will display, the WinINSTALL share that will provide the files that the console uses, if and where console activities will be logged, and the path to the Crystal Reports Designer application if you plan to create reports from within WinINSTALL.

This wizard walks you through the process of building a Windows Installer package, transform or merge module.

This wizard walks you through the process of building a patch package.

Overview of Wizards

WinINSTALL provides a number of Wizards to make using the product simpler and faster. Each of the Wizards shown below steps you through otherwise complex activities, gathering the necessary information - or providing you with defaults - and then performing the activity.

Conflict Assessment Wizard

Custom Action Wizard

Database Setup Wizard

Default Settings Wizard

Discover Wizard

Patch Wizard

What do you want to do?

Learn how to use the Conflict Assessment Wizard.

Learn how to use the Custom Action Wizard.

Learn how to use the Database Setup Wizard.

Learn how to use the Default Settings Wizard.

Learn how to use the Discover Wizard.

Learn how to use the Patch Wizard.


Conflict Assessment Wizard

This panel explains what a conflict assessment is in WinINSTALL and asks you to provide a name for the conflict assessment that you are creating. It is a good practice to use a name that is descriptive of the contents or intent of the conflict assessment since this is what will display in the console.

Click Next to continue.

On this panel, you have the option of specifying a baseline to be included in the conflict assessment. A baseline represents the state of a machine before the installation of selected packages, often the state of the machine with only the operating system and service packs installed.

Click Next to continue.

On this panel, you specify the package or packages that will be included in the conflict assessment. You can select individual packages or a list, which automatically selects all of the packages within that list. This list presentation is provided solely to make it easier to select packages. Only the package names and locations are included in the definition of the conflict assessment.

Click Next to continue.

This panel recaps the information that you provided - the name of the conflict assessment, any baselines you specified, and all of the lists and packages that you selected. If you want to change any of your selections, use the Back button.

Click Next to continue.

On this panel, you save the definition of the Conflict Assessment and specify whether to run the conflict assessment at the same time that it is saved to the database.

Click Finish to save the conflict assessment for future execution and optional immediate execution.

There are two ways to invoke the WinINSTALL Conflict Assessment Wizard:

1. Highlight Conflict Assessment in the tree pane. Select New Assessment from the Conflict Assessments menu or click the Conflict Assessment Wizard icon - [image] - on the toolbar.

2. Highlight Conflict Assessment in the tree pane. Click the New button on the Conflict Assessments tab in the data pane.

Conflict Assessment Wizard

This wizard walks you through the process of building a conflict assessment, which lets you check for potential conflicts when specific packages are installed together or when one or more packages are installed on a system with a specified "baseline" configuration.

The Conflict Assessment Wizard gathers information from you on the following panels:

Welcome to the WinINSTALL Conflict Assessment Wizard

Baseline Selection

Package Selection

Conflict Assessment Confirmation

Conflict Assessment Wizard Complete

You can access a conflict assessment by clicking the Conflict Assessment node in the tree pane of the Console and selecting the specific conflict assessment in the data pane. From this pane, you can edit, delete, run, or view the results of the conflict assessment.

How do I invoke this wizard?

Show me the actual sequence of Wizard screens. Use the Next buttons to navigate through the sequence, and the Finish button to return to this page.


Custom Action Wizard

This panel explains the purpose of a Custom Action - to extend the built-in functionality of the Windows Installer- and introduces the actions that the wizard will perform to create the custom action.

On this panel, you give the custom action a name and select the source type for the custom action to be created. There are six source types for custom actions:

DLL calls an entry point into a DLL

EXE launches an executable

Text defines a directory, property or error message with specified text

JScript launches a Java script

VBScript launches a Visual Basic script

Install launches a nested installation of another MSI package

On this panel, you specify where the source of the custom action should be stored. The choices that are available depend on the source type that you selected on the previous panel. The choice that you select determines whether there will be an intermediate panel before the Target panel and what that panel will look like.

On this panel, you specify the target of the custom action. The entry that you must make depends on the source type that you selected on an earlier panel.

On this panel, you specify how the custom action should be executed and the return type.

On this panel, you tell the wizard to complete the process and create the custom action.

  1. In the tree pane, expand Software Distribution, expand Software Distribution Lists, expand a specific list, and highlight a Windows Installer package under the list.

  2. In the list pane, select General.

  3. In the data pane, select the Custom Actions tab and click [image].

Custom Action Wizard

This wizard creates or modifies a custom action that can be used to extend the built-in functionality of Windows Installer. Once you have created a custom action, you must insert it into one of the sequences in order for it to be executed. Once the custom action is defined, it can be used like any other action in the sequence table.

The Custom Action Wizard gathers information from you on the following panels:

Welcome to the Custom Action Wizard

Source Type

Source Storage

Target

Final Details

Completing the Custom Action Wizard

How do I invoke this wizard?

Show me the actual sequence of Wizard screens. Use the Next buttons to navigate through the sequence, and the Finish button to return to this page.


Database Setup Wizard

This panel explains the purpose of the Database Setup Wizard - to guide you through the process of setting up a WinINSTALL database.

Click Next to continue.

This panel explains the purpose of the Database Setup Wizard - to guide you through the process of setting up a WinINSTALL database.

On this panel, you specify the type of database that you want to set up. WinINSTALL supports Microsoft SQL Server 2000, Microsoft MSDE, and Oracle 9i databases.

Click Next to continue.

On this panel, you select a database server from the drop-down list of available servers and give the database you are creating a name. You can also specify whether to use Windows authentication for database access or provide a user name and password.

Click Next to continue.

On this panel, you create the new database and add the database tables.

Click Next to continue.

This panel informs you that you have completed the creation of a new WinINSTALL database and summarizes the type of database that you created, the name of the server where the database is located and the name of the database itself.

Click Finish.

This panel explains the purpose of a Custom Action - to extend the built-in functionality of the Windows Installer- and introduces the actions that the wizard will perform to create the custom action.

This wizard runs automatically after setup if you chose the option to do so when the product was being installed. If you want to run it manually, you do so outside of the WinINSTALL console:

  1. Under the WinINSTALL share, expand the bin folder.

  2. Navigate to WIDBSetup.exe and double-click it. The Database Setup Wizard opens.

Database Setup Wizard

This wizard walks you through the process of setting up a WinINSTALL database - Microsoft® SQL Server 2000, SQL Server 2005 Express Edition, or Oracle® 9.

The Database Setup Wizard gathers information from you on the following panels:

Welcome t o the WinINSTALL Database Setup Wizard

Database Type

Database Server Options

Database Creation

Completing the WinINSTALL Database Setup Wizard

How do I invoke this wizard?

Show me the actual sequence of Wizard screens. Use the Next buttons to navigate through the sequence, and the Finish button to return to this page.


Default Settings Wizard

This panel explains the purpose of this wizard - to help you make the settings that are needed in order for the console to run - and lets you know how to change these settings from the console View menu

Click Next to continue.

On this panel, you set up the database connection for the WinINSTALL console. You specify the type of database (SQL Server, SQL Server 2005 Express Edition, or Oracle), the name and location of the database, and the credentials to be used to log on to the database server (Windows NT integrated security or a specific username and password). The data in this database will be displayed in the console.

Click Next to continue.

On this panel, you specify the WinINSTALL share that this console will use. This share holds all of the files needed by the console, including executables, configuration files, helps files, and report files.

Click Next to continue.

On this panel, you specify whether you want console activity written to the Windows Event Log, to the WinINSTALL database, to both, or not logged at all. You also specify the path to the Crystal Reports Designer executable on your machine, if you plan to work on reports from within the WinINSTALL console.

Click Next to continue.

On this panel, you see a summary of the settings that you have made and tell the wizard to complete the process.

Click Finish.

This wizard runs automatically the first time that you open the WinINSTALL console. It runs automatically and cannot be invoked from the console. If you want to change any of these settings later, do the following:

  1. With any node selected in the tree pane, choose Console Options from the View menu.

  2. On the Console Options dialog, make the desired changes to settings and click OK.

  3. Restart the console.

Default Settings Wizard

This wizard helps you make the settings you need to run the WinINSTALL console - the connection to the database whose data the console will display, the WinINSTALL share that will provide the files that the console uses, if and where console activities will be logged, and the path to the Crystal Reports Designer application if you plan to create reports from within WinINSTALL.

The Default Settings Wizard gathers information from you on the following panels:

Welcome to the WinINSTALL Default Settings Wizard

Database Connection

WinINSTALL Share Location

Options

Completing the Default Settings Wizard

How do I invoke this wizard?

Show me the actual sequence of Wizard screens. Use the Next buttons to navigate through the sequence, and the Finish button to return to this page.


Welcome

This panel explains the purpose of the operating system wizard and introduces the actions that the wizard will allow you to perform.

To complete this portion of the wizard:

  1. Read the explanatory information.

  2. Click Next to begin.


Patch Wizard

This panel explains that the patch wizard will walk you through the creation of a Windows Installer patch package, or .msp file, which contains the information needed to upgrade an application from one version to another.

Click Next to continue.

On this panel, you give the patch package a name and tell WinINSTALL where to store the resulting .msp file. You have the option of accepting the default name and location for a text log file that will be generated automatically when the patch is built or specifying a different name and path. You can also choose to have a unique GUID generated for the patch.

Click Next to continue.

On this panel, you specify the Windows Installer package that installs the upgraded version of the product and the package that installs an earlier version of the same product. You can include multiple earlier versions for each upgraded version.

To add an upgraded version, right-click Upgraded and Target MSI Packages and select Add Upgraded MSI. Browse to the appropriate .msi file on the Open dialog.

To add an earlier version, right-click the upgraded package that you added above and select Add Target MSI. Browse to the appropriate .msi file on the Open dialog.

Click Next to continue.

This panel informs you that the wizard has gathered all of the information it needs and is ready to build the patch package for you. It has already built a patch creation package (.pcp file) and will now use that file to create the actual patch package.

If you want to set optional properties that can prevent certain problems from interfering with the creation of the package or if you want to view the data in the .pcp file, click the Advanced button.

Click Finish to build the patch.

On the Advanced Options dialog, you can set the four following properties to override potential problems that might prevent the creation of the patch package:

· Allow product code to differ
· Allow product major version to differ
· Include whole file instead of creating a binary file patch
· Ignore missing files from target images

Click the View Tables button to view and modify the information in the .pcp file before creating the patch. The MSI Table Editor dialog provides a list of all of the tables in the .pcp database and allows you to view and modify the actions, descriptions, and templates in each.

1. In the tree pane, expand Software Distribution, expand Software Distribution Lists, expand a specific list, and highlight a package under the list.

2. Select Run --> Patch Wizard from the File menu or click the Patch Wizard icon - [image] - on the toolbar.

Patch Wizard

This wizard creates a software patch in four easy steps. You simply invoke the wizard from the WinINSTALL Console, supply the information it requests on each page, and click Next. When you click Finish on the final page, you have a software patch that is ready to use.

The Patch Wizard gathers information from you on the following panels:

Welcome to the WinINSTALL Patch Wizard

Defining the Patch Package

Selecting Application Versions

Completing the Patch Wizard

To associate the patch with a Windows Installer package, highlight the package in the tree pane of the console, select Patches and Transforms in the list pane, and add the patch to the Patches tab in the data pane. The next time that you install the package, the patch will be applied. That's how simple it is.

How do I invoke this wizard?

Show me the actual sequence of Wizard screens. Use the Next buttons to navigate through the sequence, and the Finish button to return to this page.


WinINSTALL Reference Library

What do you want to review?

Installation Requirements

WinINSTALL Directory Structures

WinINSTALL Database

WinINSTALL Console Logging - Event Codes

WinINSTALL Logging - Types and Levels

Conflict Assessment Conflict Categories and Messages


WinINSTALL Directory Structures

WinINSTALL Console

When the WinINSTALL Console is installed or the WinINSTALL Agent is deployed, the following directory structure is created on the target system:

C:\Program Files\OnDemand\WinINSTALL

The binaries for the Console and Agent are stored in the following directory:

C:\Program Files\OnDemand\WinINSTALL\Bin

WinINSTALL Server and Share

When a WinINSTALL Share is installed on a WinINSTALL Server, it creates the following shared folder by default:

C:\WinINSTALL

The following subfolders are created within the shared folder:

\Bin

Contains the binaries for the WinINSTALL program - including Discover, the Automatic Installer, the Interactive Installer, the conflict assessment baseline generator, the files to be deployed with the WinINSTALL Agent, and the MSI file that installs additional WinINSTALL Consoles - and the default exclusion files for Discover and for the conflict assessment baseline generation application.

\Help

Contains the compiled help files for WinINSTALL.

\MergeModules

Contains a folder labeled Microsoft, which holds merge modules created by Microsoft Corporation. The merge modules in this folder can be added to your merge module 'cache', where they will be checked for possible use when MSI packages are built by Discover or NAI packages are converted to a Windows Installer (MSI) format. You can add your own merge modules (in folders) or go to the Microsoft web site and download new or updated merge modules. These additional merge modules can also be added to the merge module cache.

\Packages

Contains all the default packages included in WinAPPS.LST and the list files and packages that are created with WinINSTALL (by default). This is also the default directory used by WinINSTALL replication.

\Reports

Contains all the pre-made Crystal Reports that are available from the WinINSTALL Console. If you have Crystal Designer, you can create and store your custom reports here.

WinINSTALL Database (Microsoft® SQL Server 2005 Express Edition)

When you choose the WinINSTALL installation option that also installs the SQL Server 2005 Express Edition, it creates the following directory structure for the application:

C:\Program File\Microsoft SQL Server\


WinINSTALL Database Reference Information

All information is stored in a centralized WinINSTALL database. WinINSTALL Agents installed on WinINSTALL workstations and servers control the flow of information to and from the database. From the database, configuration changes can be sent out globally or individually, inventory and conflict assessment information can be viewed and used for desktop management, and reports can be generated.

Database Schema

WinINSTALL includes a set of HTML files which completely document the database schema, for both Oracle and SQL Server databases. To view these files, open DBSchema.htm in the Bin\Help folder on the share.

You can use this information with third-party database mining tools and to create custom reports, if you have a copy of Crystal Designer.

Supported Database Platforms

WinINSTALL supports the following database platforms:

Microsoft® SQL Server 2005 Express Edition

  • SQL Server 2005 Express Edition ships with WinINSTALL.

  • Database size limited to 2 GB

  • Has a 5-session limit

  • A good database to use for small locations with less than 100 computers

Microsoft® SQL Server 2000

  • A much more robust database engine

  • Recommended for larger organizations

  • Should have latest service packs installed

Oracle® 9i or above

Upgrading the Database Schema from Previous Releases

WinINSTALL comes with two DDL files that can be used to install a new database and two DDLs that can be used upgrade an older database schema to the current version. These DDLs ship with WinINSTALL and can be found in the bin directory of the WinINSTALL share.

The easiest way to set up a new database is to use the DB Setup Wizard. However, users who prefer to install the database with a SQL Server or Oracle utility can use one of the two following DDLs:

WINSTALL.DB.DDL for SQL Server 2000

WINSTALL.DB_ORC.DDL for Oracle®

Users who need to upgrade their WinINSTALL database from an older version to the newest version should use one of the two following DDLs:

WI_SSRV_UPD.DDL is used with the utility OSQL to update a SQL Server 2000/SQL Server 2005 Express Edition database.

WI_ORAC_UPD.DDL is used with the utility SQLPLUS to update an Oracle® database.

What do you want to do?

Upgrade a Microsoft SQL Server 2000 or SQL Server 2005 Express Edition WinINSTALL database.

Upgrade an Oracle WinINSTALL database.


WinINSTALL Console Logging - Event Codes

When you click the Console Log node in the tree pane, you can view Console logging on either the Database Log or Windows Event Log tab in the data pane. There is a numeric value in the Event column, which specifies the type of activity that was logged.

Event code descriptions

1 The *** top-level list has been added.

2 The *** top-level list has been removed.

3 The *** list has been added to the +++ list.

4 The *** list has been modified.

5 The *** list has been removed from the +++ list.

6 The *** package has been added to the +++ list.

7 The *** package has been modified.

8 The *** package has been removed from the +++ list.

9 The *** machine has been added.

10 The *** machine has been modified.

11 The *** machine has been removed.

12 The WinINSTALL Agent has been deployed to the *** machine.

13 The *** scheduled task has been added.

14 The *** scheduled task has been modified.

15 The *** scheduled task has been removed.

16 The *** search has been added.

17 The *** search has been modified.

18 The *** search has been removed.

19 The *** task has been started on the +++ machine.

20 An error has occurred ***.

21 The *** machine has been configured.

22 The following Client Reset Template was added: ***.

23 The following Client Reset Template was removed: ***.

24 The following Client Reset Template was edited: ***.

25 The following Client Reset Share was added: ***.

26 The following Client Reset Share was removed: ***.

27 The following Client Reset Share was edited: ***.

28 A boot floppy was created for the following Client Reset Template: ***.

29 A user security access violation occurred in Client reset Console.

30 A database access failure occurred in Client Reset: ***.

31 A language file is missing in Client Reset: ***.

32 Failed to create a boot floppy for the following Client Reset Template: ***.

33 The following Replication Job was added: ***.

34 The following Replication Job was removed: ***.

35 The following Replication Job was edited: ***.

36 The following Client Reset Share Job was added: ***.

37 The following Client Reset Share Job was removed: ***.

38 The following Client Reset Share Job was edited: ***.

39 The following Replication Job was run: ***.

40 The following Replication Job was aborted: ***.

41 The following Replication Job status history was cleared: ***.

42 Failed to run the following Replication Job: ***.

43 Failed to abort the following Replication Job: ***.

44 Failed to clear status history for the following Replication Job: ***.

45 A user security access violation occurred in Replication Console.

46 A database access failure occurred in Replication: ***.

47 Debug: ***.


WinINSTALL Logging Types and Levels

There are three types of logging - Console logging, WinINSTALL Agent logging, and installer logging.

Console logging

The only setting is whether to log to the WinINSTALL database, the Windows Event Log, both, or neither. Console logging provides an audit trail of console user activity.

WinINSTALL Database log

  • Shows the current WinINSTALL database log entries in the console.

  • You have the option of purging this log on demand.

Windows Event log

  • Provides a real time look at the remote Windows Event Log for all Application entries with the source of WinINSTALL, by machine. (The Console user must have the proper network permission; otherwise, a message displays.)

  • Shows the NT Event log for the console machine - for all Application entries with the source of WinINSTALL.

  • You have the option of refreshing this view on demand.

You set Console logging on the Console Options dialog.


Conflict Assessment Categories and Messages

Conflict Assessment Conflict Categories and Messages

Main Conflict Categories

2 File conflict

3 Registry conflict

4 Shortcut conflict

5 INI file conflict

File conflict subcategories and messages

1 Both packages add a file and their attributes are different

2 Both packages remove the same file

3 First package adds file and second removes it

4 Second package adds file and first removes it

5 Both packages add a file and some attributes are unknown

6 Both packages add a file and the attributes match

7 The file names are the same but their path is not necessarily the same

8 Both add the same directory

9 Both remove the same directory

10 First package adds directory and second removes it

11 Second package adds and first package removes directory

Registry conflict subcategories and messages

1 Both packages add the same registry key

2 Both packages remove the same registry key

3 First package adds a registry key and second removes it

4 Second package adds a registry key and first removes it

5 Packages set the same registry value to different values

6 Both packages remove the same registry value

7 First package adds and second package removes value

8 Second package adds and first removes value

9 Both packages set the same registry value to the same value

Shortcut conflict subcategories and messages

1 Both packages write a shortcut in the same place, but the details of the shortcut differ

2 Both packages remove the same shortcut

3 First package adds a shortcut and second removes it

4 Second package adds a shortcut and first removes it

5 Both packages add a shortcut and both shortcuts have the same attributes

INI File conflict subcategories and messages

1 Both packages add the same ini section

2 Both packages remove the same ini section

3 First package adds and second package removes the same ini section

4 Second package adds and first package removes the same ini section

5 Both packages add the same ini value, with different values

6 Both packages remove the same ini value

7 First package adds and second package removes the ini value

8 Second package adds and first package removes the ini value

9 Both package add the same ini value with the same value


Special WinINSTALL Utilities

WinINSTALL provides a number of special utilities. The executables are generally located in the bin directory of the WinINSTALL share. Full documentation on all of these is available in the WinINSTALL Administrators Guide.

Add a database user (dbAddUser.cmd)

This script enables an administrator to give permission to other users to use a Microsoft SQL Server 2000 or SQL Server 2005 Express Edition database with NT Authentication. (NT Authentication is the WinINSTALL default for permissions on a SQL Server 2005 Express Edition or SQL Server 2000 database.)

This script must be run from a command prompt on a machine that has the OSQL.exe installed in the path. (OSQL.exe would normally be in the path on a machine where SQL Server 2005 Express Edition or SQL Server 2000 has been installed.) The script requires three parameters - the name of the database server/instance, the name of the database, and the name of the user to whom permission will be granted.

A sample command line is shown below:

dbAddUser.cmd MACHINE\ONDSQL WINSTALL8 MyDomain\MyUser

This script is intended to address situations where a Console user is unable to gain access to the database because of authentication problems.

Creating a Baseline for Conflict Assessment (WIBaselineGen.exe)

This utility creates a "baseline" of a machine which can then be used for conflict assessment. A baseline defines the theoretical initial state of a machine before any packages are installed, such as the state of a machine with only a particular operating system and a service pack installed. You can include a baseline in a conflict assessment to determine if there will be potential conflicts when specific packages are installed on machines with that baseline. You run a conflict assessment baseline on a machine by remotely invoking WIBaselineGen.exe in the bin directory of a WinINSTALL share.


Imagelist

Checkbox:

Checkedbox:

RadioButton:

RadioButtonSelected:

This topic is in the project simply to assure that the images above are available to other topics when selected through the style sheet.


WinINSTALL Help Conventions

WinINSTALL help uses the following conventions.

  • Italicized text can generally be expanded by clicking the text and closed by clicking the italicized text again.

  • Bold italicized text can generally be clicked to drop-down further explanations and clicked again to reverse the expansion.

  • The titles of help topics are always bold blue text, and links to other topics are underlined blue text.

  • Tips are presented in blue text with a pale yellow background.

  • Notes are presented in blue text on a pale blue background.

  • Warnings are presented in red text on a pale yellow background.

  • If you click one of the choices under the What do you want to do? section at the bottom of many help topics, another help topic may open or additional explanatory text may drop down beneath the choice you selected.


ActionTypes

Built-in Property

Environment Value

Integer

Literal

Property Table


AvailableComponents

The components available in the drop-down depend on the selection in the tree pane of the console:

  • If a package is highlighted in the tree pane, all of the components in that package appear in the list.

  • If a feature is highlighted in the tree pane, all of the components in that feature appear in the list.

  • If a component is highlighted in the tree pane, only that component appears in the list.


AvailableFeatures

The features available in the drop-down depend on the selection in the tree pane of the console:

  • If a package is highlighted in the tree pane, all of the features in that package appear in the list.

  • If a feature is highlighted in the tree pane, only that feature appears in the list.

  • If a component is highlighted in the tree pane, only the feature containing that component appears in the list.


BooleanOperators

When you are building a condition, you can choose from the following comparative or logical operators:

< TRUE if left operand is less than right operand.

<= TRUE if left operand is less than or equal to right operand.

<> TRUE if left operand is not equal to right operand.

= TRUE if left operand is equal to right operand.

> TRUE if left operand is greater than right operand.

>= TRUE if left operand is greater than or equal to right operand.

AND TRUE if both terms are TRUE.

Eqv TRUE if both terms are TRUE or both terms are FALSE.

Imp TRUE if left term is FALSE or right term is TRUE.

Not Inverts the state of the following term.

OR TRUE if either or both terms are TRUE.

Xor TRUE if either but not both terms are TRUE.


CleanAfter

Clean the Reference Machine after a Package is Created

If you have used a reference machine to build an installation package, you should clean that machine before creating the next package. Cleaning the machine simply means returning it to a condition in which it has only the operating system and any necessary service packs installed. A number of commercial products are available to simplify the process. Because a reference machine does not need to be large and expensive, some administrators have two or more. In this way, they can create a package on one machine while returning a previously-used machine to its clean state. This practice reduces downtime - and the temptation to cut corners by using a dirty machine.


CleanMachine

Run Discover on a Clean Reference Machine

A reference PC does not need to be an especially large or powerful machine. It may, for example, be smaller and less powerful than the ones your users use. For one thing, it will probably not have more than one program or suite on it at one time. Some people find it easy and desirable to have two or three reference machines. The ideal reference PC will be a clean machine. If it cannot be clean, it must be quiet.

A clean PC is defined as a machine with only the operating system and any service packs for the operating system installed on it. If you install the WinINSTALL Console (or any other product) on the machine, it is by definition no longer a clean machine. Obviously, you want to install the WinINSTALL Console somewhere, but a reference PC is not the place for it.

The reference PC should have access to the Discover program (discover.exe) in the WinINSTALL share from Network Neighborhood, Explorer, or the Run line in the Start menu. Do not map a drive to the WinINSTALL share. Doing so may cause Discover to pick up the added drive, perhaps creating a problem in your installation package.

It is a good idea to clean the reference machine after you have created a package. If you make this action a step in your package creation process, your reference machine will always be clean when you are ready to create a new package.

Why So Much Emphasis on a Clean PC?

Using a clean PC ensures that the Discover program will pick up all files and registry entries necessary for the application to run and no others. For example, assume that you have some program other than Discover – perhaps Program XXX – installed on your reference PC. In doing so, you would establish ”r;a PC that starts out with Program XXX already on it” as the norm for your installations. Assume that you then did a Discover of an application such as Office 2000. The distribution package would contain instructions on how to install Office 2000 on a machine that already has Program XXX on it. If you then installed the application (using the repackaged Windows Installer package) on another PC – one without Program XXX installed – there could be missing files and registry entries. In fact, the only way to make your package work would be to install Program XXX on all of your PCs to make them match the norm you originally established.


Component

An internally generated alphanumeric value that uniquely identifies the component for internal WinINSTALL uses. It is in the format: WICOMP<0000000n>, where <0000000n> is a unique auto-incremented 8-digit number.

All internally generated WinINSTALL identifiers have the same format: WI + <entity identifier> + <0000000n>.

Entity identifiers include COMP (for components), FEAT (for features).


Components

Components are the resources that Windows Installer installs or removes when an MSI package is processed. These resources can include files, registry entries, type libraries, shortcuts, or any other changes that need to be made to the user's system.

Components are the smallest logical structure of a Windows Installer package and cannot contain another component or feature. Components are the building blocks of features, and features make up applications, or application packages. When the Windows Installer service installs a feature, it first determines which components must be installed (or removed) to provide that feature and then installs (or removes) each such component from a user's computer as a coherent piece.

Every component has a key path, which is a file name or registry path contained within the component. When the user launches an application or a feature that belongs to the application, Windows Installer checks the key paths of all the member components of that feature or application to verify that they are intact.


DataTypes

REG_SZ

REG_EXPAND_SZ

REG_BINARY

REG_DWORD

REG_MULTI_SZ


Error Message

The message that will display if the launch condition is not met.


Feature

An internally generated alphanumeric value that uniquely identifies the feature for internal WinINSTALL uses. It is in the format: WIFEAT<0000000n>, where <0000000n> is a unique auto-incremented 8-digit number.


Features

Applications - and thus application packages - are made up of features. A feature is a group of related components and sub-features. Features can be thought of as the end-user's view of an application. For example, a word processing application may have a feature such as Spell Checker that a user may decide to install independently.

The selection of features is typically determined by the application's functionality from the user's perspective. For example, Microsoft Office contains root features for each of its applications (Word, Excel, Outlook, etc). Each root feature contains the necessary sub-features and components to install each feature as a whole.


GUID

A Globally Unique Identifier (GUID) is a 128-bit unique identification string used to identify different products, upgrades, and installer components. Each installer component used by Windows Installer must have a unique GUID, and every version of every product must have a unique GUID. Different upgrades of a product, however, have the same GUID because there is only one upgrade GUID for a product. GUID are also referred to as a Universally Unique Identifier.

An example of a syntactically correct GUID is shown below:

{97531-2222-44444-666666-88888888ABCD}

Note: Correct GUID format requires that GUIDs contain only numbers and upper case letters, and that they are enclosed by curly braces.


GUIDPopup

A GUID (Globally Unique Identifier) is a 128-bit unique identification string used to identify different products, upgrades, and installer components. (example: {97531-2222-44444-666666-88888888ABCD})

Note: Correct GUID format requires that GUIDs contain only numbers and upper case letters, and that they are enclosed by curly braces.


ICE

ICE is an acronym for Internal Consistency Evaluator. An ICE is a routine designed to test a .msi database for a particular consistency problem. These routines are contained in special files called .cub files. WinINSTALL's MSI Validation and Repair feature allows you to specify .cub files and to select among the ICEs they contain, to test your own .msi files -- and, in certain cases, to automatically repair the errors that are found..


Key Path

The key path defines the location of the component on the system. This is normally the name of a file in the component, but it can also be a folder or a registry entry. The Windows Installer looks for the key path of a component to determine is the component is properly installed.


Key Path Value

A key path value is uniquely associated with a component - a component can have only one key path value and a key path value can be used by only one component. Windows Installer uses this value to locate an installed component and also uses it for self-repair if it finds that the key path is missing.


Launch Condition

The condition that must be met in order for the package to be executed.


LogicalOperators

When you are building your condition string, you may want to link multiple conditions. After you have built one condition, you can link it to another condition with the following logical operators:

AND TRUE if both terms are TRUE.

Eqv TRUE if both terms are TRUE or both terms are FALSE.

Imp TRUE if left term is FALSE or right term is TRUE.

Not Inverts the state of the following term.

OR TRUE if either or both terms are TRUE.

Xor TRUE if either but not both terms are TRUE.


New GUID

WinINSTALL can automatically generate a new unique GUID (Globally Unique Identifier). Click Yes to generate a new GUID. Click No to return to the previous screen and keep the current GUID.


Packages

Windows Installer packages are organized around the concept of components and features. Packages are made up of one or more features. Features are made up of one or more components or other features.

Authors of installation packages decide how to divide their application into features and components. When you use the WinINSTALL Discover Wizard to automatically author a Windows Installer package, Discover automatically makes these decisions on how to author the Windows Installer package in a very specific and predictable manner.


QuietMachine

If you Cannot Use a Clean Machine

If you absolutely cannot build your packages on a clean reference machine, you must at least use a "quiet” one. Follow these recommendations:

  • Make sure that none of the components of the program you are about to install - particularly any .DLLs - already exist on the reference machine where you are building the package. If, for example, a .DLL already exists on the system, the application’s setup program will not reinstall it - and Discover will not recognize that the .DLL should be part of the installation. Consequently, when a user tries to start the application that was installed with the package, he or she will receive an error message stating that a .DLL is missing. Make certain to account for every element of the installation.

  • Shut down any anti-virus programs that are running.

  • Shut down programs and applications that could write to the Temp or other directories on the reference machine.

  • Do not use mail or word processing programs while you are building the package.

  • Do not delete files or send files to the Recycle Bin while you are building the package.

  • Disable screen saver utilities, e-mail products, personal schedulers, and other programs that run automatically in the background.

Even if you follow all of these guidelines, you may still have to use the WinINSTALL Console to modify the package once it is built - to account for problems introduced because the reference machine was not clean. Fortunately, the WinINSTALL Console makes it easy to modify your package.


Reserve Folder Choices

Reserve Folder

The Reserve Folder is the name of a property that is the full path to the destination directory where the component will be installed. Generally, this property name is the name of a directory in the Directory table or the name of a property set returned by the AppSearch action. Click one of the radio buttons below:

  • Choose from Directory Table

Click this radio button if the Reserve Folder will be the name of a directory in the Directory table of the MSI database. Click [image] to browse for the directory on the Select Directory dialog.

  • Choose from AppSearch Results

Click this radio button if the Reserve Folder will be the name of a property set obtained using the AppSearch action. Choose from the drop-down list.


Signature

A signature is a unique file identifier. It may contain letters, digits, underscore symbols, and periods. When the Windows Installer is searching for a file, it first looks for the signature and then locates the file.


WindowsInstallerService

Microsoft® Windows Installer Service

A Windows Installer package is a self-contained database file containing requirements and instructions that the Windows Installer service uses when it installs or uninstalls an application. A Windows Installer package typically includes general information about the application being installed, files to be copied or deleted, shortcuts to be added, changes to be made to the Registry, information about NT Services used, changes to INI files or environment variables, and whether the application should be advertised or installed.

Applications that use the Windows Installer service are defined as a three-level hierarchy. Application packages are made up of one or more features. Features are made up of one or more components. Features may also contain other features, and components may appear in more than one feature. End-users view an application as a collection of features and are generally unaware of the actual components that make up the features. Developers are aware of features, but they are concerned with the actual components that are used to build the application. System administrators must be aware of and concerned about both features and components.

For detailed information on the Windows Installer service, refer to the Microsoft Windows Installer documentation.


View CA Results

This report returns a detailed list of the packages and baselines that make up all currently defined conflict assessments.

This report returns a detailed list of the currently defined conflict assessments that include a specified package or baseline.

This report returns a detailed list of the packages and baselines that make up a specified conflict assessment.

This report returns a detailed list of the conflicts detected in each currently defined conflict assessment.

This report returns a detailed list of the conflicts detected in each currently defined conflict assessment which includes a specified package or baseline.

This report returns a detailed list of the conflicts detected in a specified conflict assessment.

View the Results of a Conflict Assessment

Once you have run a conflict assessment, you can view the results either from the data pane of the Console or in a report.

To view the results of a conflict assessment in the console:

  1. Select the Conflict Assessment node in the tree pane.

  2. On the data pane, highlight the conflict assessment that you want to review and do one of the following:

    • Select View Results from the Conflict Assessments menu.

    • Click [image] on the toolbar.

    • Click the Results button on the data pane.

  3. The results display on a dialog.

To view the results of a conflict assessment in a report:

  1. Expand the Reports node in the tree pane.

  2. Select the Conflict Assessment report category beneath it.

  3. On the data pane, choose one of the reports listed below. For some of the reports, you will be asked to supply a parameter to filter the data that is returned.

Conflict Assessments

Conflict Assessments with a Specified Package or Baseline

Specified Conflict Assessment

Conflicts Detected

Conflicts Detected for a Specified Package or Baseline

Conflicts Detected in a Specified Conflict Assessment

  4. You can view and print the report that displays on the Console


AddMachinesFromNetwork_Dialog

On this dialog, you can browse the network to automatically add machines to the Console.

In the left-hand pane, expand a network directory structure, such as Active Directory or Microsoft Networks, and select the machine you want to add. Click the Add button and the machine displays in the right-hand pane. You can add multiple machines or groups of machines. When you have finished selecting machines, click OK and the machines you selected display on the Machines tab in the data pane of the Console.

Click Cancel to abandon this activity and return to the previous screen.


Create Transform from msi

Create a Transform from a MSI

On this dialog, you specify a transform file you want to create from a MSI file.

To create a transform file, do the following:

  1. Click [image] for the MSI file to transfer to, specify a name and click Save.

  2. Click [image] for the Transform file to create, specify a name and click Save.

  3. Click Validation and Errors and specify the particular validations you would like performed at runtime.

  4. Click OK to accept.


Preferences (2) Dialog

Preferences Dialog

On this dialog, you specify whether the specified user will have permission to install the package, uninstall it, or both.

Click OK to accept your selections and continue. Click Cancel to abandon these selections and return to the previous screen.


Run Job Dialog

If you select one or more machines in the Machines list and then select Task either from the Machines menu or from the right-click context menu, then select either Merge or Publish from the sub-menu, the Run Job dialog appears.

Job Type

If you selected Merge, then the listed job type will be Merge. If you selected Publish, then the listed job type will be Publish.

Available target machines

Merge and Publish tasks execute only on servers, so this list contains all the WinINSTALL servers which will execute the Merge or Publish job.

Note: If you selected workstations in the Machines list, the Available target machines list will contain not those workstations, but the servers to which they are assigned.

Click OK to execute the job immediately, or Cancel to exit without launching the job.


Text File Edits Dialog

Insertion Text Enter new text to be inserted at the beginning of the ASCII file.

Insertion Text Enter new text to be inserted at the end of the ASCII file.

Insertion Text Enter new text to be inserted into ASCII file at the current position.

Insertion Text Enter new text to be inserted into ASCII file before specified text.

Position Text Enter the text in the ASCII file that will be used to determine where to insert new text. When the installer finds this text, it will insert the text in the Insertion Text text box before the text entered here.

Alternative Position Text Enter alternate text in the ASCII file that will be used to determine where to insert new text, if text in the Position Text text box is not found. When the installer finds this alternate text, it will insert the text in the Insertion Text text box before the text entered here.

Insertion Text Enter new text to be inserted into ASCII file after specified text.

Position Text Enter the text in the ASCII file that will be used to determine where to insert new text. When the installer finds this text, it will insert the text in the Insertion Text text box after the text entered here.

Alternative Position Text Enter alternate text in the ASCII file that will be used to determine where to insert new text, if text in the Position Text text box is not found. When the installer finds this alternate text, it will insert the text in the Insertion Text text box after the text entered here.

Replace With Enter new text that will be used to replace existing text in the ASCII file.

Text to be Replaced Enter the text in the ASCII file that will be replaced by new text. When the installer finds this text, it will replace it with the text in the Replace With text box.

Alternative Text to be Replaced Enter alternate text in the ASCII file that will be replaced by new text if the text in the Text to be Replaced text box is not found. When the installer finds this alternate text, it will replace it with the text in the Replace With text box.

Path to be Added Enter new text to be inserted into ASCII file.

Position Text Enter text in ASCII file that will be used to determine where to insert new text.

Alternative Position Text Enter alternate text in ASCII file that will be used to determine where to insert new text, if Position Text is not found.

When this option is selected, if edits are specified for an ASCII file that does not already exist on the target system, Windows Installer will create the file. You specify whether the file that is created should be in ASCII or Unicode format.

  • Create ANSI

  • Create Unicode

When this option is selected, case is taken into consideration when looking for text.

Enter the text (line or path) that will be removed from the ASCII file on the target system.

Enter the text that will determine where the line or path will be removed from the ASCII file on the target system. When WinINSTALL finds this text, it will remove the next instance of the line or path entered in the Removal Text text box.

Enter the alternate text that will determine where the line or path will be removed from the ASCII file on the target system, if the Position Text is not found. When WinINSTALL finds this alternate text, it will remove the next instance of the line or path entered in the Removal Text text box.

When this option is selected, the line containing the specified text (entered in the Removal Text text box and located using the Position Text or Alternative Position Text) will be removed from the ASCII file on the target system.

When this option is selected, the path containing the specified text (entered in the Removal Text text box and located using the Position Text or Alternative Position Text) will be removed from the ASCII file on the target system.

When this option is selected, case is taken into consideration when looking for text.

Text File Edits Dialog (MSI Package)

On this dialog, you specify text that will be added to or removed from ASCII text files during installation of a Windows Installer package. The appearance of the dialog will differ, depending on whether you are adding text to or removing text from ASCII files.

Adding text to an ASCII file

If you are specifying text that will be added to an ASCII text file during installation of a Windows Installer package, the dialog will display as shown below.

There are three text boxes at the top of the dialog. Whether or not the text boxes at the top of the dialog are active and their labels depend on the action being taken when text is inserted.

Click each available Action to see the associated active text boxes:

  • Insert at Top of File

  • Insert at Bottom of File

  • Insert at Current Position

  • Insert Before Position Text

  • Insert After Position Text

  • Replace

  • Path Addition

There are two check boxes at the bottom of the dialog:

  • Create this File If Not Found

  • Case Sensitive

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.

Removing text from an ASCII file

If you are specifying text that will be removed from an ASCII text file during installation of a Windows Installer package, the dialog will display as shown below.

There are three text boxes at the top of the dialog:

Removal Text

Position Text

Alternative Position Text

There are two choices for Action:

  • Remove Line Containing

  • Remove Path Containing

  • Case Sensitive

Click OK to accept these values and continue. Click Cancel to abandon these values and return to the previous screen.


Generate a New GUID Message

WinINSTALL can automatically generate a new unique GUID.

Click Yes to generate a new GUID. Click No to return to the previous screen and keep the current GUID.


Automating Command Line Deployment

WIDeploy.exe, found in the \bin directory of the WinINSTALL share, can deploy to multiple specified machines; it can query the WinINSTALL database and deploy to all listed machines which do not have the WinINSTALL Agent deployed (or to a subset of such machines); and it can sweep the network, using Active Directory, for machines to be added and deployed automatically.

In a dynamic IT environment, regular scheduling of this type of automated deployment (for example, through system scheduling of a batch file or the desired command line) can help to significantly reduce administrator workload and assure that all new machines appear in the database promptly and automatically.

Tip: Command line execution of WIDeploy.exe can be piped to a log file (i.e., wideploy.exe -m * >> WIAgentDeploy.log) which can be examined later to assure that all deployments executed as expected.

Three variations on the WIDeploy.exe -m switch facilitate this type of automated deployment operation:

  1. Query the WinINSTALL Database (”r;*”)

”r;*” indicates a SQL query of the WinINSTALL database. By default, this switch returns all machines in the database which are marked as not having the WinINSTALL agent deployed. SQL syntax can further limit the list of returned machines to a specific subset.

  2. Deploy to a List of Machines (”r;@”)

”r;@” indicates an XML file, which contains a list of machines to deploy to, in the following format:

<?xml version='1.0' encoding='utf-8'?>

<MachineList>

<Machine>MACHINE1</Machine>

<Machine>MACHINE2</Machine>

. . .

<Machine>MACHINEn</Machine>

</MachineList>

Example:

\\ServerName\WinINSTALL\Bin\WIDeploy.exe deploy -u -i -m @@WinstallDir\MachineList.XML @WinstallDir\WorkstationAgent.SMD

(The @@ indicates an XML file and the variable 'WinstallDir')

  3. Query Active Directory (”r;+”)

”r;+” indicates an Active Directory query. Further details on AD deployment follow below.

The AD query option uses AD query syntax to search the directory. In all of these cases, what is found is automatically filtered by whether the machines are already in the database and deployed. Machines already listed as deployed will not be included in the deployment.

In its simplest form, ”r;-m +” would search AD for all computers, check the database to make sure they're not already deployed, and do the deployment as is done for SQL- and XML-selected machines automatically.

But the Active Directory option provides additional capabilities: ”r;-m +” uses Active Directory to search for machines to which to deploy. The general syntax is as follows:

-m +[ad-search-filter][::column]

By default, the entire AD tree is searched for computers, and any that aren't already in the database are candidates for deployment. The ”r;ad-search-filter” is an AD/LDAP filter in RFC2254 form that can be used to qualify the machines selected.

The ”r;column” can specify a column to be used for the hostname, and defaults to ”r;dNSHostName.” Typically, the column would only be specified in cases where you don't want deployment to use the fully qualified DNS name for the machine, in which case ”r;cn” would be specified.

If no filter is specified, ”r;(&(objectCategory=computer))” is used to select any machines in the forest.

If a filter is specified, it will be added to the default so that in no case will anything other than machines be selected. For instance, ”r;-m +cn=a*” would select any machines that began with the letter ”r;a” (resulting in a filter of ”r;(&(objectCategory=computer)(cn=a*))”).

The context of the search is determined by the login account, so that if the user is logged in to a sub-domain, only machines in and below that domain are visible. On the other hand, if the login user is in the top level domain, the entire forest is visible (with potential performance implications).

The –k switch can be used to change the search context from the default. For instance, ”r;-k cn=Computers,dc=unitedwidgets,dc=com” would search the Computers folder only, and not the entire AD forest.

As each machine is returned from AD, it is checked against the database to see if has already been added, and if not, becomes a candidate for deployment. In this way, the AD tree can be periodically swept for machines that aren't already in the database, for instance.

By default, both the long (”r;dNSHostName”) and short (”r;cn”) are checked to make sure the machine(s) aren't already in the database. If the machine has no long name, or if ”r;cn” was specified as the hostname column, only the short name would be searched. Both the NAME and SHORTNAME columns are searched in any case.

The –n switch can be used to limit the number of machines to be added, or to return a larger number of machines than AD supports by default – 1000 or 1500, depending on the OS.

TIP: It is strongly recommended to use the –x switch to simulate deployment until the search filter and context have been refined to select the machines to which to be deployed.

Warning: Firewalls on WinINSTALL machines (servers and workstations) must be configured to enable the necessary WinINSTALL operations, or problems will definitely occur, including WinINSTALL Agent deployment failure. See Required Firewall Settings for details.

Click here for full details on WIDeploy command line switches.


Cache and Reuse Agent Credentials

While Secure Manual Deployment (SMD) files can be used to deploy WinINSTALL agents from the command line, and to deploy WinINSTALL agents on machines whose operating systems do not support system services (i.e., Win9x), they are also able to securely cache agent credentials for reuse with later deployments from the Console:

  1. On the Deploy WinINSTALL Agent dialog, click the Create New SMD File button to display the Secure Manual Deployment dialog.

  2. On this dialog, in addition to the credentials for the WinINSTALL Agent to use, you specify the path and file name of the SMD file to be saved (default SMD file extension is .SMD), the machine role (workstation or server), the deployment share, and whether or not to run in user mode (Win9x only). When you click OK, this information is all saved to the specified SMD file.

  3. At any later time, you can retrieve and reuse these credentials by clicking the Read Existing SMD File button on the Deploy WinINSTALL Agent dialog. Browse to the desired saved SMD file and click OK to load the username and password into the Service Credentials fields on the Deploy WinINSTALL Agent dialog.

Tip: This feature enables administrators to deploy the WinINSTALL Agent without having access to the username and password used by the Agents.


Command Line Deployment Switches

When you deploy the WinINSTALL Agent from a command line (using WIDeploy.exe and an SMD file), a number of command line switches are available to customize the deployment. Some of these switches, in particular, can be used to automate deployment from a command line.

The following command line switches are available when using WIDeploy.exe:

-c <string> Supplies the database connection string instead of reading it from the WIUserConfig.xml file.

-d <mode> Sets the database mode

-d 0

Don't try to retrieve machine IDs (GUIDs) from the database.

-d 1 (default)

Try to retrieve machine IDs (GUIDs) from the database. If unsuccessful, generate a machine ID (GUID).

-d 2

Only deploy to machines that have a machine ID (GUID) in the database.

-e Stops deployment when errors occur

-f Forces an automatic reboot if required

-i Ignores the "Agent deployed" flag in the database when selecting machines

-k <context> Specifies the <AD> search context

-l Generates an installer log file in the Windows folder

-m <machine> Specifies a machine for remote deployment

-m MyMachine

Deploys the Agent to a single machine named MyMachine.

-m @MyList.xml

Deploys the Agent to a set of machines, as specified in the XML file MyList.xml located in the current directory. A full path can be used to point to an XML file located elsewhere. The XML file must be in a specific format.

-m *

Deploys the Agent to all machines currently defined in the database to which the Agent has not already been deployed.

-m "*MACHINEGROUP='MyGroup' "

Deploys the Agent to all machines that are in the MyGroup machine group to which the Agent has not already been deployed.

Note: Anything after "* and before " is part of a SQL WHERE clause. Technically, the double-quotes are not necessary unless the WHERE clause contains a space (for example, if you use AND or OR).

-m +[ad-search-filter][::column]

Uses Active Directory to search for machines to which to deploy.

-n <count> Limit the Active Directory search to <count> machines.

-p <password> Supplies the password - if needed - for the database connection string

-q Shows no progress messages (Quiet Mode)

-r Suppresses automatic reboot if required

-s Shows the contents of the SMD (Secure Manual Deployment) file

-t <thread> Specifies the number of simultaneous remote deployments to perform.

-u Monitor the progress of each remote deployment.

-w <seconds> Waits the specified number of seconds between deploying the agent to machines (crude form of bandwidth throttling)

-x Simulates deployment instead of actually deploying the Agent

-? Shows help


Configure Immediate Publishing

To instruct the console to automatically publish any agent settings changes or new or changed scheduled jobs, without waiting for the servers' publish processing interval to expire, follow these steps:

  1. Select View->Console Options from the menu bar.

  2. In the Database settings area, check the check box marked Automatically Publish jobs and WinINSTALL agent settings changes.

  3. Click OK to save changes.


Wake Machine

You can immediately awaken machines from a sleep or hibernation state from the Machines node in the tree pane:

  1. Expand the Machines node in the tree pane and select the All Machines sub-node beneath.

  2. Highlight All Machines in the list pane and all of the machines display on the Machines tab in the data pane.

  3. In the data pane, do one of the following:

    • Highlight the machine(s) to which data will be published and select Task from the Machine menu at the top of the screen.

    • Right-click the machine(s) to be awakened and select Task from the context menu.

  4. Select Wake Machine from the sub-menu.

  5. The Job Wizard will appear, offering a series of panels to step you through the process of running a Wake on LAN task.

You can also schedule a machine to be awakened at a future time.


Build a Patch Package

An .MSP (Microsoft® Software Patch) file is a special package that updates an earlier version of an application into an upgraded version of that same application. Patches can be used to repair both local and administrative installations. A patch is not a database like a Windows Installer package and cannot be used independently. Instead, a patch package includes summary information, database transforms, and a patch file that are used to update a regular Windows Installer package. Patches are not altered when they are applied to a package so they can be reused - which makes them a valuable, time-saving tool for software distribution.


When to Create a New List File

There are different reasons why you might want to create new list files:

  • To separate packages being tested from those that are ready for production use

When you create a package to distribute an application to your users, you should always test it before distributing it. Doing so lets you confirm that the package behaves as expected. You should create at least one special list file for packages that still need to be tested. When you are sure that a package behaves as you wish, you can remove it from the test list file and add it to a production list file. The test list should be a "parent" list (that is, one at the same level as

    • You may want to create new list files for organizational reasons.

    For example, you may want to create a list for use by specific users or groups within your organization, or for applications of a specific type. The list file is a powerful and flexible organizing tool for packages.


Build a Merge Module

An MSM file, or Windows Installer Merge Module, is a simplified MSI database whose purpose is to deliver components to a Windows Installer package. Like a Windows Installer package, it contains instructions, components, and setup logic. Unlike a Windows Installer package, it cannot be separately installed and must be merged into an existing Windows Installer package. The merging process permanently alters the original Windows Installer package by adding the merge module’s components and logic to it. However, the merge module itself is not changed by the merge process and is designed to be reusable.

A merge module frequently installs only one component, often a file such as a common DLL. Each merge module contains unique version information that is used by the Windows Installer database to determine which applications use the component, in order to prevent premature removal of that component. To insure that the component is installed consistently for all applications, the merge module must be merged into each Windows Installer package that uses the component. This eliminates problems such as version conflicts, missing registry entries, and improperly installed files.


Build a Patch Package

An .MSP file, or Windows Installer Patch, is a special package that updates an earlier version of an application into an upgraded version of that same application. Patches can be used to repair both local and administrative installations. A patch is not a database like a Windows Installer package and cannot be used independently. Instead, a patch package includes summary information, database transforms, and a patch file that are used to update a regular Windows Installer package. Patches are not altered when they are applied to a package so they can be reused - which makes them a valuable, time-saving tool for software distribution.


Build a Transform

An .MST file, or Windows Installer Transform, is an instruction file that can be used like a setup file to customize how a package is installed. For example, assume you have a Windows Installer package that will be installed on every user’s desktop, but the specific features that are enabled will depend on the user’s workgroup. For each workgroup, you can create a separate transform that disables the appropriate features in the product and apply these transforms at runtime. Or, suppose that you are installing an application with several UI presentations. You can create a number of transforms that each configure the application with a different UI presentation. Transforms are particularly useful for customizing third-party Windows Installer packages. Rather than making changes to the actual Windows Installer package, you simply create one or more transforms that make the changes you want.


Build MSI Package

An MSI file, or Windows Installer package, is a database that contains instructions on how to install, modify, or remove an application using the Microsoft Windows Installer Service. Windows Installer packages are self-repairing and can install the features of the application on an as-needed basis. Many Independent Software Vendors (ISVs) have started to provide Windows Installer packages for their applications, but some have not yet converted to this format. In addition, there are many older, non-MSI applications that are still in use. When these non-MSI applications are repackaged into MSI applications, they can take advantage of the various enhancements, such as self-healing and advertising, that are available to native Windows Installer packages. WinINSTALL is the ideal tool for repackaging non-MSI applications into MSI applications, giving them all of the capabilities that MSI applications can offer.


MSI Manual Build

Build a Windows Installer Package Manually

To build a package manually:

  1. In the tree pane of the Console, expand the Software Distribution node and the Software Distribution Lists sub-node.

  2. Select a list and do one of the following:

    • right-click the list and choose New -> Windows Installer Package from the pop-up menu.

    • choose New -> Windows Installer Package from the File menu.

  3. On the Create Package dialog, enter a name and description for the package.

  4. On the next dialog, accept or change the language and the MSI schema version.

  5. With the package highlighted in the tree pane, select a category in the list pane and enter information on the tabs in the data pane. The tabs change, depending on which category you select in the list pane.

  6. When you have finished entering information, save your changes by clicking [image] on the toolbar or choosing File --> Save from the menu bar.


NAI Manual Build

Build a WinINSTALL Package Manually

To build an NAI package manually:

  1. In the tree pane of the Console, expand the Software Distribution node and the Software Distribution Lists sub-node.

  2. Select a list and do one of the following:

    • right-click the list and choose New -> WinINSTALL Package from the pop-up menu.

    • choose New -> WinINSTALL Package from the File menu.

  3. On the Create Package dialog, enter a name and description for the package.

  4. With the package highlighted in the tree pane, select a category in the list pane and enter information on the tabs in the data pane. The tabs change, depending on which category you select in the list pane.

  5. When you have finished entering information, save your changes by clicking [image] on the toolbar or choosing File --> Save from the menu bar.


Import Clients from File

The Import Clients from File dialog appears when you select Import Clients from the Clients menu or PXE Clients right-click context menu.

The dialog allows you to import Client records from a text file into the PXE Client Reset. To import a Cilent, follow these steps:

    1. Click Browse and select the text file that contains the Client information to import.

    2. Click Select. The .csv file now appears in the client records pane.

    3. Select the check box corresponding to this file.

    4. Select the server to which imported clients will be assigned and click Import.


Create PXE Boot Disk

The Create PXE Boot Disk dialog appears when you click the PXE Client Reset on the PXE Client Reset node tree and select File>Create PXE Boot Disk.

The dialog allows you to select and open a remote boot floppy generator file. This dialog appears only once when a RBFG.exe file is missing from the <WinINSTALL share>\ClientReset\Data folder.


PXE Client Properties Advanced Tab

The Advanced tab of the PXE Client Properties dialog displays the IP Address settings for the selected PXE Client machine. When changing these settings, they won't be applied until after the next reset.

You can change the PXE Client IP Address to use either a DHCP server or a Static IP. If you select a static IP, enter the IP address in the field and specify the Subnet Mask and the Gateway IP.

To save the Properties changes, click Apply. To save changes and return to the previous Console display, click OK.

To discard changes, click Cancel.


PXE_CR_Template_Supported Operating Systems

Supported Operating System Languages Dialog

This dialog lists all supported operating system languages for PXE Reset installation. Each language has a check box beside it.

By default, all supported languages are displayed in this drop-down. To limit the list of languages displayed from now on, de-select the languages you would prefer omitted and click OK.


Add Hotfix

WinINSTALL allows you to add a single hotfix to an operating system for a PXE server.

To add a hotfix:

  1. Enter the Hotfix file name or click Browse to select one.

  2. Select the Runtime options you want to apply and click OK, or click Set defaults to use the default.


Edit Operating System

WinINSTALL allows you to select an operating system for a PXE server and modify its properties.

To modify the operating system properties:

  1. Enter the Microsoft Windows installation file source folder, or click Browse to select one.

  2. Select the operating system that you would like to install.

  3. You can add, edit, or remove licenses using the following information:

    • To add a license key, click the Add icon [image] above in the License Keys section. The License row appears where you can specify the License Key, License Count and the Current Count.

    • To edit a license key, select the desired license key in the list and click the Edit icon [image] above the list. This will allow you to modify the license key information

    • To remove a license key, select the desired license key in the list and click the Delete icon [image] above the list.

  4. Click Apply and then click OK to continue.


Hotfix Executables

WinINSTALL allows you to add optional hotfix patches to apply to the operating system during a client reset. You can add, modify or remove a hotfix patch using the following information:

  • To add a hotfix, click the Add icon [image] above in the Hotfixes section. You can select to add a single or multiple hotfixes.

  • To edit a hotfix, select the desired hotfix in the list and click the Edit icon [image] above the list. This will allow you to modify the hotfix information.

  • To remove a hotfix from the Hotfixes list, select the desired hotfix and click the Delete icon [image] above the list.

Click Finish to continue.


Hotfixes

WinINSTALL allows you to apply a single or multiple hotfixes to an operating system for a PXE server. The Hotfixes tab displays any existing hotfixes. You can add, modify or remove a hotfix using the following information:

  • To add a hotfix, click the Add icon [image] above in the Hotfixes section. You can select to add a single or multiple hotfixes.

  • To edit a hotfix, select the desired hotfix in the list and click the Edit icon [image] above the list. This will allow you to modify the hotfix information.

  • To remove a hotfix from the Hotfixes list, select the desired hotfix and click the Delete icon [image] above the list.

Click Apply and then click OK to continue.


Operating System and License Keys

WinINSTALL allows you to specify source files and add required license keys for the operating system you want to install.

To specify the operating system and license keys:

  1. Click Browse and select the Microsoft Windows installation file source folder.

  2. Select the operating system that you would like to install.

You can add, edit, or remove licenses using the following information:

    • To add a license key, click the Add icon [image] above in the License Keys section. The License row appears where you can specify the License Key, License Count and the Current Count.

    • To edit a license key, select the desired license key in the list and click the Edit icon [image] above the list. This will allow you to modify the license key information

    • To remove a license key, select the desired license key in the list and click the Delete icon [image] above the list.

  3. Click Finish to continue.


General Information for Merge Modules

When you create a new merge module, before you have added any components, General is the only category that displays in the list pane. There are two associated tabs in the data pane:

Summary Tab

Directory Tab

When you add an existing merge module to the Console or add components to a merge module you have created, additional categories display in the list pane, and General now has four associated tabs in the data pane:

Summary Tab

Advanced Tab

Merge Module Tab

Directory Tab


Advanced Dialog Properties

WinINSTALL provides the ability to quickly and easily generate a standard Windows Installer user interface, including a customized dialog to prompt the user during an install for a value to assign to a property.

This property prompt dialog is based on a template MSI file, QueryProperty.msi, supplied in the \bin directory of the WinINSTALL share.

If you would like to use an MSI file of your own creation for this purpose, you can specify that file on the Advanced Dialog Properties dialog.

Either enter the path to the MSI file or click the Ellipsis button [image] to browse to it. Then click OK to save the entry.


Dialog Property Dialog

WinINSTALL provides the ability to quickly and easily generate a standard Windows Installer user interface, including a customized dialog to prompt the user during an install for a value to assign to a property.

To add a user prompt dialog, click the Add button on the Dialog Properties dialog. To modify a user prompt dialog, select the desired property in the list on the Dialog Properties dialog, and click the Modify button. The Dialog Property dialog will appear.

This dialog permits you to enter or modify the information needed for a user prompt dialog: Property, Page Description, and Prompt.

Property

Enter in the property field the property whose value the user will be prompted to enter (for example, [TARGETDIR]). The text provided by the user will be written to this property before the install is performed.

Generally, you will specify a public MSI property in the Property field (a name that is in all caps), but any valid property is acceptable. During package installation, the property’s value is set to the user’s input prior to the InstallExecute sequence of the install.

Page Description

Enter in the Page Description field the desired title for the user prompt dialog (for example, Data Directory). This title will display in the title bar of the dialog at install time, when the user is prompted.

Prompt

In the Prompt field, enter the text to display on the dialog to prompt the user for the desired information (for example, Please enter the data directory:).

When you click OK, the dialog you have specified here will be added to the list of dialogs on the Dialog Properties dialog.


Manually Insert System Properites into an MSI Package

Manually Insert System Variables into an MSI Package

You manually insert system variables into an MSI package by browsing for or entering a system property (i.e., the counterpart to a WinINSTALL system variable) in an eligible edit box. You can either place the cursor where you want to insert the variable in the edit box or replace existing text by highlighting a block of text in the edit box. Instead of right-clicking an edit box and selecting a variable from a pop-up context menu, you can click the browse button for the edit box and chose a system property from a list of available properties on a dialog.


System Properties used in MSI Packages

The full path to the file system directory that stores administrative tools.

C:\Documents and Settings\All Users\Start Menu\Programs

The full path to the file directory containing application data for the current user.

C:\Documents and Settings\<user>\Application Data

The full path to the file directory containing application data for all users.

C:\Documents and Settings\All Users\Application Data

The full path to the Common Files folder for the current user.

C:\Program Files\Common Files

The full path of the predefined 64-bit Common Files folder. (not used on 32-bit Windows)

C:\Program Files\Common Files

The full path to the current user's Desktop folder.

C:\Documents and Settings\<user>\Desktop

If an All Users profile exists and the [ALLUSERS] property is set, then this property is set to the full path to the Desktop folder for all users.

C:\Documents and Settings\All Users\Desktop

The full path of the Favorites folder for the current user.

C:\Documents and Settings\<user>\Favorites

The full path of the system Fonts folder.

C:\WINNT\Fonts

The full path to the file system directory that serves as the data repository for local (non-roaming) applications.

C:\Documents and Settings\<user>\Local Settings\Application Data

The full path to the MyPictures folder.

C:\Documents and Settings\<user>\My Documents\My Pictures

The full path to the Personal folder for the current user.

C:\Documents and Settings\<user>\My Documents\Personal\

The primary folder for the installation.

C:\ProgramFiles

The path of the volume designated by the [PRIMARYFOLDER] property. For example, if the folder referenced by [PRIMARYFOLDER] resolves to C:\Program Files, then [PrimaryVolumePath] is set to C:.

The full path to the Program Files folder.

C:\Program Files

The full path of the predefined 64-bit Program Files folder.

C:\Program Files

The full path to the Program Menu folder for the current user.

C:\Documents and Settings\<user>\Start Menu\Programs\

The default drive for the destination directory of the installation. The value for this property must end with '\'.

The full path to the SendTo folder for the current user.

C:\Documents and Settings\<user>\SendTo\

The root directory containing the source cabinet file or the source file tree of the installation package.

The full path to the Start Menu folder.

C:\Documents and Settings\<user>\Start Menu\

If an All Users profile exists and the [ALLUSERS] property is set, then this property is set to the full path to the Start Menu folder for all users.

C:\Documents and Settings\All Users\Start Menu\

The full path to the Startup folder.

C:\Documents and Settings\<user>\Start Menu\Programs\Startup\

If an All Users profile exists and the [ALLUSERS] property is set, then this property is set to the full path to the Start Menu folder for all users.

C:\Documents and Settings\All Users\Start Menu\Programs\Startup\

The full path of the System folder.

C:\WINNT\System32.

The full path to folder for 16-bit system DLLs.

C:\WINNT\System

The full path to the predefined System64 folder.

C:\WINNT\System32

The root destination directory for the installation. During an administrative installation, this property specifies the location to copy the installation package. During a non-administrative installation, this property specifies the root destination directory.

The full path to the Temp folder.

C:\Temp

The full path to the Template folder for the current user.

C:\Documents and Settings\<user>\Template\

The full path to the Windows folder.

C:\WINNT

The volume of the windows folder. This property always ends with a backslash.

System Properties used in MSI Packages

Windows Installer natively supports the following twenty-eight system properties. At runtime, it automatically replaces these system properties with the appropriate value. You cannot modify these values.

[AdminToolsFolder]

[AppDataFolder]

[CommonAppDataFolder]

[CommonFilesFolder]

[CommonFiles64Folder]

[DesktopFolder]

[FavoritesFolder]

[FontsFolder]

[LocalAppDataFolder]

[MyPicturesFolder]

[PersonalFolder]

[PRIMARYFOLDER]

[PrimaryVolumePath]

[ProgramFilesFolder]

[ProgramFiles64Folder]

[ProgramMenuFolder]

[ROOTDRIVE]

[SendToFolder]

[SourceDir]

[StartMenuFolder]

[StartupFolder]

[SystemFolder]

[System16Folder]

[System64Folder]

[TARGETDIR]

[TempFolder]

[TemplateFolder]

[WindowsFolder]

[WindowsVolume]


Use the Select Directory dialog to Insert System Variables into an MSI Package

When you click the ellipsis (browse) button for an eligible edit box, the following choices display on the Select Directory dialog.

[AdminToolsFolder]

[AppDataFolder]

[CommonAppDataFolder]

[CommonFiles64Folder]

[CommonFilesFolder]

[DesktopFolder]

[FavoritesFolder]

[FontsFolder]

[LocalAppDataFolder]

[MyPicturesFolder]

[PersonalFolder]

[PRIMARYFOLDER]

[PrimaryVolumePath]

[ProgramFiles64Folder]

[ProgramFilesFolder]

[ROOTDRIVE]

[SendToFolder]

[SourceDir]

[StartMenuFolder]

[StartupFolder]

[System16Folder]

[System64Folder]

[SystemFolder]

[TARGETDIR]

[TempFolder]

[TemplateFolder]

[WindowsFolder]

[WindowsVolume]

[WI_INSTALLER_FOLDER]

[WIPROPDriveA] &ldots; [WIPROPDriveZ]


Checkpoint Restart

Enhanced Replication Checkpoint Restart

The server to server replication feature included in the WinINSTALL Desktop Management Suite and WinINSTALL Desktop Availability Suite has always provided a file-level checkpoint restart capability for interrupted replication jobs. Now this checkpoint restart capability has been extended to sub-file level, vastly increasing the efficiency of this feature. For example, if a replication session is interrupted 90% of the way through the transmission of a large file, WinINSTALL will now transfer only the remaining 10% of the file, rather than the entire file, when the session is reestablished.

Note: This enhanced checkpoint restart feature is automatically used in all Two-Phase Distribution jobs as well as in server to server replication.

Return to What's New


IPC File Transfer

WinINSTALL has long used IPC (Inter-Process Communication) for direct interaction between the WinINSTALL console and managed machines. Now this facility is used optionally or automatically in several additional WinINSTALL operations:

  • IPC file transfer is available as an optional means of transferring configuration and transaction files between the WinINSTALL agent on each managed machine and the WinINSTALL server. This new option, configured on the WinINSTALL Agent Settings Advanced Tab, allows these operations to make more efficient use of network bandwidth and strengthens network security.

  • The new Two-Phase Distribution feature automatically uses IPC file transfer to move packages to the local drive of the target machine before installation.

  • The new Patch Management facility also uses IPC file transfer to move patches to the local drive of each target machine before the patches are applied.

Return to What's New


Job Creation Wizard

WinINSTALL now provides a Wizard for job creation. This Wizard is a new, unified facility for creating both scheduled and immediate jobs, making running tasks on managed workstations easier and more intuitive than ever. Click here for more information on the WinINSTALL Job Wizard.

Return to What's New


New Patch Management

Patch Management Facility

WinINSTALL now provides the following patch management enhancements:

  • Ability to schedule periodic update of the scan file.

  • Ability to use offline scan file as a primary patch data source.

  • Ability to create separate server version of the update subagent.

  • Ability to update server database access.

  • Ability to configure patch management general settings.

In addition, WinINSTALL provides the following capabilities:

  • Ability to schedule vulnerability scans as well as remediation (patch application) jobs.

  • Ability to view all managed machines with a selected vulnerability.

  • Ability to apply patches (remediations) to all vulnerable machines.

  • Remediation jobs use the new Two-Phase Distribution feature, enabling all the associated advantages and options of that feature.

  • Vulnerability scans and remediation jobs employ the Microsoft Windows Update Agent for maximum reliability and minimum system reboots.

  • The vulnerability database and remediation patches can be automatically downloaded to WinINSTALL servers, enabling all vulnerability scans and remediation operations to be carried out with no required workstation internet access.

  • Legacy patch delivery through WinINSTALL .nai packages remains an available option.

Click here to learn more about the new patch management facility

Return to What's New


PXE Client Reset Enhancements

The PXE-based Client Reset feature of the WinINSTALL Desktop Availability Suite installs Windows operating systems directly from network servers, without loading MS-DOS or running MS-DOS applications. In addition, administrators can use the built-in integration of WinINSTALL software distribution to optionally include in the reset process installation of any number of application packages and/or Microsoft patches, and the restoration of user data and settings as well.

Note: During a PXE reset with Windows XP Media Center Edition 2005, PXE allows XP Media Center PC to join a domain.

This release introduces a number of significant enhancements to this major WinINSTALL feature:

  • Support for hardware decommissioning

  • Ability to install additional operating systems: XP Media Center, XP Tablet PC, and Windows Server 2003 R2, in all their permutations

  • Proxy DHCP

  • Server-Join

  • Power down Clients after operation

  • Support for widescreen resolutions

  • Support for operation progress

  • Support for directory restructure

  • Support very large hard drives

Return to What's New


Remote Control

WinINSTALL allows a console user to remotely control any client machine directly from the Machines list through either of two methods:

  • Windows Remote Desktop Connection (RDC).

  • The remote control product of your choice.

Click here for more information on the new WinINSTALL remote control capability.


Two-Phase Distribution

WinINSTALL offers a new option for delivering application packages to managed workstations. The new Two-Phase Distribution option delivers the package to the workstation in phase one, and then, in phase two, installs that package from the local drive. This feature provides a number of new capabilities to WinINSTALL's industry leading software distribution capability:

  • Local execution of the WinINSTALL Installer

  • Bandwidth throttling during package delivery

  • Multicast package delivery option

  • Checkpoint restart (sub-file level) during package delivery

  • Package delivery without requiring access to a network share

  • Decoupling of package delivery from package installation

TIP: This combination of new capabilities makes Two-Phase Distribution an ideal mechanism for delivering large packages to remote or poorly connected users.

Note: Two-Phase Distribution requires certain firewall settings to operate. These settings are configurable.

Click here for more information on Two-Phase Distribution.


Adding Drivers

When adding or editing drivers to install with an operating system, you no longer need to specify the operating system supported by the driver. Supported operating systems are automatically detected and displayed for each driver on the Add Drivers dialog and Edit Drivers dialog.


OS Language Detection

PXE Client Reset now supports detecting and installing all supported language versions of Microsoft Windows operating systems.


PXE Reset Queues

If the number of selected clients to be reset is greater than the maximum specified queue size, the number allowed by the specified queue size is launched, and the rest are automatically queued to avoid network congestion. Queued resets are automatically launched as in-progress clients reach the point where the OS files have been copied to the local drive.

Click here to see how to configure the PXE reset queue.


SCSI and SATA Support

SCSI and SATA drivers are now supported along with all other drivers. Simply add them as you would any other driver and they will be automatically installed along with the operating system.


PXE Client Reset Folder Structure

The PXE Client Reset feature is available only in the WinINSTALL Desktop Availability Suite. The \ClientReset folder is the root folder in the WinINSTALL share for all PXE Client Reset files, including operating system files, console files, drivers, and post-install utilities. It is located directly under the WinINSTALL share and contains the following subfolders:

\ClientReset\nnnn Folders

These folders contain language-specific operating system files, where nnnn represents the Microsoft-assigned language ID.

The following list provides examples for some of the most common language IDs.

1033 - English

1036 - French

1031 - German

1034 - Spanish

1040 - Italian

1046 - Brazilian Portuguese

1041 - Japanese

1042 - Korean

1028 - Traditional Chinese

2052 - Simplified Chinese

So, for example, English operating system files would be located within the \ClientReset\1033 folder, while French operating system files would be found beneath the \ClientReset\1036 folder.

Operating system files are added as part of the configuration of PXE Client Reset servers.

\ClientReset\data Folder

The data sub-folder contains the files required for the PXE Client Reset console functionality.

\ClientReset\drivers Folder

The drivers sub-folder contains all driver files added for PXE Client Reset operations.

Drivers are added as part of the configuration of PXE Client Reset servers.

\ClientReset\sif Folder

The sif sub-folder contains the master unattended files for all operating systems. When a machine is reset, these files are loaded, and then settings specific to the template are applied.

For users knowledgeable in the settings and syntax of Windows unattended files, the files in the ClientReset\sif folder can be edited directly- but this is not recommended, because incorrect settings may result in failed resets.

\ClientReset\utilities Folder

The utilities sub-folder contains all added post-install utilities.

The post-install utilities are specified when configuring PXE Client Reset Servers.


Upgrading a Microsoft Database

Upgrading a Microsoft SQL Server 2000 or SQL Server 2005 Express Edition WinINSTALL Database

If you have a previous version of the WinINSTALL database and want to upgrade to the most current version, do the following:

  1. From the machine where the database resides, open a command prompt and use OSQL.EXE to update the database schema, using the WI_SSRV_UPD.DDL in the WinINSTALL\bin directory.

  2. If you use SQL Server authentication, use the following command:

osql -I -n -S DBMachine\WinINSTALL -d DBName -i C:\Program Files\WinINSTALL\bin\WI_SSRV_UPD.DDL -U sa -P pwd

where DBMachine refers to the machine where your WinINSTALL database resides, \WinINSTALL refers to the instance name, DBName refers to the name of your database, sa refers to the account and pwd refers to your password.

  3. If you use NT authentication, use the following command:

osql -I -n -S DBMachine\WinINSTALL -d DBName -i C:\Program Files\WinINSTALL\bin\WI_SSRV_UPD.DDL -E

where DBMachine refers to the machine where your WinINSTALL database resides, \WinINSTALL refers to the instance name, and DBName refers to the name of your database.


Upgrading an Oracle Database

Upgrading an Oracle WinINSTALL Database

Upgrading an Oracle database requires the use of the program SQLPLUS, provided with Oracle. You can use the command line utility, SQLPLUS, or the version providing a user interface, SQLPLUSW. If you have a previous version of an Oracle WinINSTALL database and want to upgrade to the most current version, use the following instructions apply to upgrade with SQLPLUS.

You will need the following information:

  1. The local net service name associated with the WinINSTALL database.

  2. The user ID of the owner of the WinINSTALL database.

  3. The password associated with the user ID.

  4. The path of the file containing the upgrade DDL - WI_ORAC_UPD.DDL. This file is found in the \bin directory of the WinINSTALL share.

It is easiest to run the utility on a machine where the WinINSTALL console is installed because such a machine should already have a local net service name assigned to the database.

Running SQLPLUS to perform the upgrade is a four-step process.

  1. Open a command prompt window for entering the command.

  2. Start the SQLPLUS program.

  3. Tell SQLPLUS to run the .DDL file.

  4. Exit the SQLPLUS program.

Here is an example of how to perform an Oracle upgrade, using the values specified below:

Local Net Service Name: YourDB

User ID: system

Password: pwd

DDL File Path: \\ShareMachine\WinINSTALL\Bin\WI_ORAC_UPD.DDL

First, open a command prompt and start SQLPLUS with the following command line:

sqlplus system/pwd@YourDB

A few lines of copyright information will be displayed, followed by a SQL> prompt. At this prompt, enter:

start \\ShareMachine\WinINSTALL\Bin\WI_ORAC_UPD.DDL

Several screens full of informational messages will display as the schema is updated. You may want to scroll back to ensure that no errors were encountered.

Finally, to exit the program, at the next SQL> prompt, enter:

exit

You return to the command prompt window's command prompt and enter another exit, which closes the command prompt window.


BaselineSelection Dialog

Baseline Selection

On this panel, you have the option of specifying a baseline to be included in the conflict assessment. A baseline represents the state of a machine before the installation of selected packages, often the state of the machine with only the operating system and service packs installed.

To complete this portion of the wizard:

  1. Enter the full path to a baseline file that you have previously created. You generate a baseline on a machine with a specific operating environment, using WIBaselineGen.exe.

  2. Click Next to continue.


CAConfirmation Dialog

Conflict Assessment Confirmation

This panel summarizes the information that you provided - the name of the conflict assessment, any baselines you specified, and all of the lists and packages that you selected.

To complete this portion of the wizard:

  1. Review the information to confirm that it is correct.

  2. If you want to change any of your selections, use the Back button.

  3. Click Next to continue.


Completing Dialog

Conflict Assessment Wizard Complete

On this panel, you save the definition of the Conflict Assessment and specify whether to run the conflict assessment at the same time that it is saved to the database.

To complete this portion of the wizard:

  1. Decide whether to run the Conflict Assessment now or later. If you want to run it now, uncheck the Do not run this Conflict Assessment right now check-box. (The default is not to run the Conflict Assessment.)

  2. Click Finish to save the conflict assessment for future execution and, optionally, to run the conflict assessment immediately.

Warning: When deciding whether or not to run a Conflict Assessment immediately, be aware that running a Conflict Assessment can take a very long time, especially if the baseline has never been used before. (The first time that a baseline is used in a Conflict Assessment, all of the data for that baseline is loaded into the database, which is very time-consuming.)

Tip: To save time, the recommended practice is to create a Conflict Assessment that holds only a baseline and then run in during off-hours. If you are in the habit of doing this each time that you create a new baseline, Conflict Assessments that later use that baseline will run much more quickly.


PackageSelection Dialog

Package Selection

On this panel, you specify the package or packages that will be included in the conflict assessment. You can select individual packages or a list, which automatically selects all of the packages within that list. This list presentation is provided solely to make it easier to select packages. Only the package names and locations are included in the definition of the conflict assessment.

To complete this portion of the wizard:

  1. Select the list file that holds the packages that you want to include in the Conflict Assessment you are creating or select one or more individual packages. Click one or more check-boxes to make your selection.

  2. Click Next to continue.

.


Welcome Dialog

Welcome to the WinINSTALL Conflict Assessment Wizard

This panel explains the purpose of a conflict assessment - to help you predict whether conflicts will arise when specified packages are installed together or installed on a machine with a specified operating system environment.

Tip: A big advantage of running a conflict assessment is that it allows you to predict whether you will encounter problems before you do an actual installation.

To complete this portion of the wizard:

  1. Read the explanatory information.

  2. Provide a name for the Conflict Assessment you are creating. It is a good practice to use a name that is descriptive of the contents or intent of the conflict assessment since this is what will display on the Console.

  3. Click Next to begin.


Binary Entry

On this panel, you specify the binary entry that will be the source of the custom action. This panel displays if you chose DLL, EXE, JScript, VBScript, or Install as the source type and Binary Table as the source storage

To complete this panel:

  1. Click Add Binary Entry and browse to the binary file that you want to use as the source for the custom action.

  2. Click Next to continue.


Completing the Custom Action Wizard

On this panel, you tell the wizard to complete the process and create the custom action. Click Finish to create the custom action.


Directory

On this panel, you specify the directory where the custom action will be stored. This panel displays if you chose EXE or Text as the source type and Directory as the source storage.

To complete this panel:

  1. Click the browse button to select the directory where the custom action will be stored.

  2. Click Next to continue.


File

On this panel, you specify the file that will be the source of the custom action. This panel displays if you chose DLL, EXE, JScript, VBScript, or Install as the source type and File Table as the source storage.

To complete this panel:

  1. Click Add File Entry and browse to the file that you want to use as the source for the custom action. (if you chose Install as the source type. the button will be labeled Select Relative MSI.)

  2. Click Next to continue.


Final Details

On this panel, you specify how the custom action should be executed and the return type.

To complete this panel:

  1. Specify how the custom action should be executed:

Always

    • First Sequence

    • Once Per Process

    • Client Repeat

    • Inscript

      • Rollback

You use a Rollback category of custom action to reverse the system changes made by a normal custom action during the installation process. A rollback custom action is a type of deferred custom action in that it is not executed when the Windows Installer encounters it in the Execute Sequence Table. The Windows Installer copies this type of custom action to the rollback script, and the action is only executed if a rollback becomes necessary.

      • Commit

Commit Custom Actions are executed upon successful completion of the installation script. This means that they are run after the completion of the InstallFinalize actions.

  2. Specify the return type:

    • Continue

    • Asynchronous

  3. Specify whether to impersonate:

    • Do not impersonate

  4. Click Next to continue.


Product Code

On this panel, you specify the product code (expressed as a GUID) that will be the source of the custom action. This panel displays if you chose Install as the source type and Product Code as the source storage.

To complete this panel:

  1. Enter the GUID (Globally Unique Identifier) that is the product code for the product.

  2. Click Next to continue.


Property

On this panel, you specify the property that specifies the location where the custom action will be stored. This panel displays if you chose EXE, Text, JScript, or VBScript as the source type and Property as the source storage.

To complete this panel:

  1. Select a property from the drop-down list of available properties or enter a property in the text box.

  2. Click Next to continue.


Source Storage

If you chose DLL as the source type, you can store the source in a:

  • binary table (specified on the Binary Entry panel)

  • file table (specified on the File panel)

If you chose EXE as the source type, you can store the source in a:

  • binary table (specified on the Binary Entry panel)

  • file table (specified on the File panel)

  • directory (specified on the Directory panel)

  • property (specified on the Property panel)

If you chose Text as the source type, you can store the source in a:

  • error text

  • directory (specified on the Directory panel)

  • property (specified on the Property panel)

If you chose JScript as the source type, you can store the source in a:

  • binary table (specified on the Binary Entry panel)

  • file table (specified on the File panel)

  • string of code

  • property (specified on the Property panel)

If you chose VBScript as the source type, you can store the source in a:

  • binary table (specified on the Binary Entry panel)

  • file table (specified on the File panel)

  • string of code

  • property (specified on the Property panel)

If you chose Install as the source type, you can store the source in a:

  • binary table (specified on the Binary Entry panel)

  • relative path to Windows Installer (specified on the File panel)

  • product code (specified on the Product Code panel)

Source Storage

On this panel, you specify where the source of the custom action should be stored.

To complete this panel:

  1. Click the radio button next to the type of object where you want the source of the custom action to be stored. The choices that are available depend on the source type that you selected on the previous panel.

  2. Click Next to continue.


Source Type

On this panel, you give the custom action a name and select the source type for the custom action to be created. There are six source types for custom actions:

DLL calls an entry point into a DLL

EXE launches an executable

Text defines a directory, property or error message with specified text

JScript launches a Java script

VBScript launches a Visual Basic script

Install launches a nested installation of another MSI package

To complete this panel:

  1. Enter a brief descriptive name for the custom action. This is the name that will display on the Console.

  2. Click the radio button next to one of the source types.

  3. Click Next to continue. The next panel that displays will depend on the source type that you selected.


Target

On this panel, you specify the target of the custom action. The entry that you must make depends on the source type that you selected on an earlier panel.

To complete this panel:

  1. Specify the target:

    • If you chose DLL as the source type, you must enter the DLL entry point.

    • If you chose EXE as the source type and:

      • you chose Directory as the source storage, you must enter the name of the executable file, an optional command line string, and an optional path the EXE file.

      • you did not choose Directory as the source storage, you must enter the command line string.

    • If you chose Text as the source type and:

      • you chose Error Text as the source storage, you must enter a formatted text string, a literal message, or an index into the Error table.

      • you did not choose Error Text as the source storage, you must enter a formatted text string.

    • If you chose JScript as the source type and:

      • you chose Code, you must enter a string of JScript code.

      • you did not choose Code, you must enter an optional JScript function that can be called.

    • If you chose VBScript as the source type and:

      • you chose Code, you must enter a string of VBScript code.

      • you did not choose Code, you must enter an optional VBScript function that can be called.

    • If you chose Install as the source type, you must enter the MSI package to be installed

  2. Click Next to continue.


Welcome to the Custom Action Wizard

This panel explains the purpose of a Custom Action - to extend the built-in functionality of the Windows Installer- and introduces the actions that the wizard will perform to create the custom action.

To complete this panel:

  1. Read the explanatory information.

  2. Click Next to begin.


Completing the WinINSTALL Database Setup Wizard

This panel informs you that you have completed the creation of a new WinINSTALL database and summarizes the type of database that you created, the name of the server where the database is located and the name of the database itself.

To complete this portion of the wizard:

  1. Verify that the summary information reflects the choices you wanted to make - the type of database, the name of the database server, and the name of the database itself.

  2. Click Finish.


Database Creation Panel

Database Creation

This panel lets you create the new database and add the database tables.

To complete this portion of the wizard:

  1. Click the Create button. The wizard begins the process of creating the database. When it has finished, green checkmarks appear beside Create new database and Add database tables. Logging information and a series of numbers display in the list box.

Note: If there are problems, large red Xs will appear instead of green checkmarks and error messages will display in the list box.

  2. Click Next to continue.


Database Server Options Panel

Database Server Options

This panel lets you select a database server from the drop-down list of available servers and give the database you are creating a name. You can also specify whether to use Windows authentication for database access or provide a user name and password.

To complete this portion of the wizard:

  1. In the list of servers that have already been added to your WinINSTALL environment, select the one where you want to create the database.

  2. Enter a name for the database you are creating or accept the default value, WINSSTALL8.

  3. Specify the credentials to be used for database access:

    • Windows Authentication (using the domain and user account shown)

    • Provide Credentials (using the user name and password supplied)

  4. Click Next to continue.


Database Type Panel

Database Type

This panel lets you specify the type of database that you want to set up. WinINSTALL supports Microsoft® SQL Server 2000, SQL Server 2005 Express Edition, and Oracle® 9i databases.

To complete this portion of the wizard:

  1. Click the radio button next to the type of database that you want to set up:

    • Microsoft SQL / MSDE

    • Oracle

  2. Click Next to continue.


Welcome to the WinINSTALL Database Setup Wizard

This panel explains the purpose of the Database Setup Wizard - to guide you through the process of setting up a WinINSTALL database.

To complete this portion of the wizard:

  1. Read the explanatory information.

  2. Make sure that you know the type of database you want to create and the name of the server where the database will be located. Make sure that you are signed on with an account that has administrative access to the database server.

  3. If you are creating a Microsoft® SQL Server 2000 or SQL Server 2005 Express Edition database, make sure that MDAC 2.6 or greater is installed on the database server. If you are initializing an Oracle® database, the Oracle client or server must already be installed on the machine where you are running the wizard and the database must have already been created on the database server using Oracle tools.

  4. Click Next to begin.


Completing Panel

Completing the Default Settings Wizard

On this panel, you see a summary of the settings that you have selected and tell the wizard to complete the process.

To complete this portion of the wizard:

  1. Review the settings you have selected. If you want to make any changes, click the Back button to return to the appropriate panel.

  2. If you are satisfied with the settings you have selected, click Finish. If you decide to make changes to any of these settings after you have closed the wizard, you can do so by choosing Console Options from the View menu.


Database Connection Panel

Database Connection

On this panel, you set up the database connection for the WinINSTALL console. You specify the type of database (Microsoft® SQL Server 2000, SQL Server 2005 Express Edition, or Oracle®), the name and location of the database, and the credentials to be used to log on to the database server (Windows NT integrated security or a specific username and password). The data in this database will be displayed in the console.

To complete this panel:

  1. Click the Choose Database button and follow the instructions on the Data Link Properties dialog. When you click OK, the database settings you specified display in the Connection String edit box.

  2. Enter the password that WinINSTALL needs to access the database. (You already entered this password when you specified the credentials on the Data Link Properties dialog, but you must provide it again for WinINSTALL.)

  3. Click Next to continue.


Options Panel

Options

On this panel, you specify whether you want console activity written to the Windows Event Log, to the WinINSTALL database, to both, or not logged at all. You also specify the path to the Crystal Reports Designer executable on your machine, if you plan to work on reports from within the WinINSTALL console.

To complete this panel:

  1. If you want the console activity to be written to a log, check one or both of the Logging Options:

    • Log Console Activities to Windows Event Log

    • Log Console Activities to WinINSTALL database

  2. If you have a licensed copy of Crystal Reports Designer installed on your local machine and would like to use it without closing the console, enter or browse to the location of the Crystal Reports Designer executable. The path to the executable is not expressed in UNC form.

Note: Crystal Reports Designer must be installed on the same machine as the WinINSTALL console.

  3. Click Next to continue.


Welcome Panel

Welcome to the WinINSTALL Default Settings Wizard

This panel explains the purpose of this wizard - to help you make the settings that are needed in order for the WinINSTALL console to run - and lets you know how to change these settings later - from the console View menu.

To complete this panel:

  1. Read the explanatory information.

  2. Click Next to begin.


WinINSTALL Share Location Panel

WinINSTALL Share Location

On this panel, you specify the WinINSTALL share that this console will use. This share holds all of the files needed by the console, including executables, configuration files, helps files, and report files.

To complete this panel:

  1. Enter or browse to the full path to the WinINSTALL share that will be used by this console. The path must be expressed in UNC (Universal Naming Convention) form.

  2. Click Next to continue.


Completing Dialog

Completing the Patch Wizard

On this panel, you tell the wizard to complete the process and create the patch package from the patch creation package that it has built. However, you also have the option of first configuring certain advanced settings or viewing and editing the data in the patch creation package before the patch is created.

To complete this portion of the wizard:

  1. If you want to configure advanced settings to override problems that might prevent the creation of the patch package or if you want to view or edit the data in the patch creation package, click the Advanced button.

  2. If you are ready for the wizard to build your patch, click Finish.


Defining PatchP ackage Dialog

Defining the Patch Package

On this panel, you specify the name and location of the patch package and the log file generated during the patch creation process.

To complete this portion of the wizard:

  1. Enter the full path to the patch package that will be created, including the .msp file name.

  2. Accept or enter a different name and location for the text log file.

  3. Accept the existing GUID (Globally Unique Identifier) for the patch package or click the button to generate a new GUID.

  4. Click Next to continue.


AppVersion Dialog

Selecting Application Versions

On this panel, you specify the Windows Installer package that installs the upgraded version of the product and the package that installs an earlier version of the same product. You can include multiple earlier versions for each upgraded version.

To complete this portion of the wizard:

  1. Right-click Upgraded and Target MSI Packages and select Add Upgraded MSI. Browse to the appropriate .msi file on the Open dialog.

  2. Right-click the upgraded package that you added above, select Add Target MSI. Browse to the appropriate .msi file on the Open dialog.

  3. If you decide not to include one of the application versions that you previously selected (either upgraded or earlier), right-click the package you want to remove and select Delete.

  4. Click Next to continue.


Welcome Dialog

Welcome to the WinINSTALL Patch Wizard

This panel explains the purpose of a patch package - to upgrade applications from one version to another - and introduces the actions that the wizard will perform as it builds your patch.

To complete this portion of the wizard:

  1. Read the explanatory information.

  2. Click Next to begin.