Symantec WINDOWS INSTALLER EDITOR 7.0 SP2 - REFERENCE FOR WISE INSTALLATION EXPRESS V1.0 Installation Manual

Table of Contents

Advertisement

Quick Links

Windows Installer Editor Reference

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the WINDOWS INSTALLER EDITOR 7.0 SP2 - REFERENCE FOR WISE INSTALLATION EXPRESS V1.0 and is the answer not in the manual?

Questions and answers

Summary of Contents for Symantec WINDOWS INSTALLER EDITOR 7.0 SP2 - REFERENCE FOR WISE INSTALLATION EXPRESS V1.0

  • Page 1 Windows Installer Editor Reference...
  • Page 2 Copyright © 2010 Symantec Corporation. All rights reserved. Symantec, the Symantec Logo, and Altiris are trademarks or registered trademarks of Symantec Corporation or its affiliates in the U.S. and other countries. Other names may be trademarks of their respective owners.
  • Page 3: Technical Support

    Global support purchased on a regional business hours or 24 hours a day, 7 days a week basis Premium service offerings that include Account Management Services For information about Symantec’s support offerings, you can visit our web site at the following URL: www.symantec.com/business/support/ All support services will be delivered in accordance with your support agreement and the then-current enterprise technical support policy.
  • Page 4 Troubleshooting that was performed before contacting Symantec Recent software configuration changes and network changes Licensing and registration If your Symantec product requires registration or a license key, access our technical support Web page at the following URL: www.symantec.com/business/support/ Customer service Customer service information is available at the following URL: www.symantec.com/business/support/...
  • Page 5 Consulting Symantec Consulting Services provide on-site technical Services expertise from Symantec and its trusted partners. Symantec Consulting Services offer a variety of prepackaged and customizable options that include assessment, design, implementation, monitoring, and management capabilities. Each is focused on establishing and maintaining the integrity and availability of your IT resources.
  • Page 6: Table Of Contents

    Contents Technical Support ............3 Chapter 1: Introduction .
  • Page 7 One File Per Component Rule Set ..........59 Chapter 3: Working With Wise Installation Files .
  • Page 8 Chapter 5: Assembling an Installation ........112 Files Page .
  • Page 9 Chapter 6: Your Installation on the Destination Computer ..... 170 About System Requirements ..........170 Setting a Requirement on the System Requirements Page.
  • Page 10 Changing Public Properties in an Installation ....... . 229 Applying Transforms to an Installation ........230 Applying or Removing Patches With a Command Line .
  • Page 11 Chapter 11: Upgrading Applications ........277 About Upgrading Applications .
  • Page 12 Creating a Configurable Merge Module ........321 Setting Configuration Item Details .
  • Page 13 Creating a New Row in a Table..........376 Editing Existing Tables .
  • Page 14 Adding the Custom Property Dialog ..........420 Chapter 18: Macro Editor .
  • Page 15 Call DLL From Installed Files ..........457 Call JScript From Embedded Code .
  • Page 16 Index............. . . 511 Windows Installer Editor Reference...
  • Page 17: Chapter 1: Introduction

    Chapter 1 Introduction This chapter includes the following topics: About Windows Installer Editor on page 17 Starting the Software on page 18 The Product Interface on page 18 About Visual Studio Integration on page 19 Using Installation Expert on page 20 Using the Task List on page 26 Installation Resources and Their Locations...
  • Page 18: Starting The Software

    Introduction Starting the Software To start the software Select Start menu > Programs > Symantec > Wise Installation Express > Windows Installer Editor. Select File menu > New. The New Installation File dialog box appears. Complete the dialog box: In the Categories list, click Predefined Templates.
  • Page 19: About Visual Studio Integration

    Introduction MSI Script MSI Script provides a powerful yet easy-to-use environment for editing Windows Installer installation sequences. A sequence is a set of actions that are performed during a particular type of installation. MSI Script is easy to work with even if you are not familiar with the underlying Windows Installer technology.
  • Page 20: Using Installation Expert

    Introduction In the Visual Studio integrated editor, installations synchronize automatically with the other projects in the solution. Example: adding .EXEs, .DLLs, .OCXs, and assemblies to the solution adds them to the installation. Installation meta data fields (examples: application name, version, manufacturer, and default directory) are populated using data from the Visual Studio solution.
  • Page 21 Introduction Installation Expert window in Windows Installer Editor Page Views Page Area Page Groups View Navigation Compile and Test Page Views Use the Page Views drop-down list to select a page view, which is a set of Installation Expert page groups and pages. About Page Views on page 22 and Customizing Page Views...
  • Page 22: About Page Views

    Introduction Compiling and Testing Compile, Test, Debug, and Run buttons test and compile the installation. In Visual Studio: These buttons are not available, but the same functionality is available through menu commands.) See also: Using the Current Release Drop-Down List on page 25 Using the Current Feature Drop-Down List on page 24...
  • Page 23: Customizing Page Views

    Introduction Creating and Editing Installation Templates on page 49. When you use a template to create an installation, the default page view is the page view that was displayed when the template was created. If the template’s default page view is a custom page view, you can customize it. Customizing Page Views on page 23.
  • Page 24: Using The Current Feature Drop-Down List

    Introduction The Enter Name dialog box appears. Enter a name for the page view. To create an access key for the name, type & (ampersand) before a letter in the name. The page view access keys appear only in the page group’s right-click menu, which you access from the context menu key (the key next to the right Ctrl key).
  • Page 25: Using The Current Release Drop-Down List

    Introduction Current Feature drop-down list Example: Suppose you have three features, and each feature requires different registry entries. On the Registry page, you select the first feature from Current Feature, create its registry entries, select the second feature in the list, create its registry entries, and so on.
  • Page 26: Using The Task List

    Introduction Using Installation Expert on page 20 Using the Current Feature Drop-Down List on page 24 Using the Task List When Windows Installer Editor encounters installation issues that could cause problems, it displays them in the Task List. You can manually display or hide the Task List from the View menu.
  • Page 27: Filtering The Task List

    Introduction An error that will cause incorrect behavior and must be fixed Validation issues found by Package Validation Validating a Package on page 349. A task you created Operations you can perform in the Task List Filter tasks by type. Filtering the Task List.
  • Page 28: Finding Table Errors From The Task List

    Introduction Finding Table Errors From the Task List If a task is associated with a table, you can access that table directly from the Task List, which helps you discover the problem that caused the issue. Example: If a source file for the installation was moved or deleted at its source, a WiseSourcePath table error appears during compile.
  • Page 29: Installation Resources And Their Locations

    Introduction Using the Task List on page 26 Installation Resources and Their Locations Windows Installer Editor uses various resources to create installations. (Example: installation templates, component rules, language files, and so on.) Most of these resources are installed with this product. Others must be created and placed in the appropriate directory before they can be used.
  • Page 30: Downloading Redistributable Files

    Introduction To generate a package contents report Select Reports menu > Package Contents and select either Summary or By Feature. In Visual Studio: Project menu > Reports > Package Contents and select either Summary or By Feature. The report is generated and opens in a dialog box. Use a report’s table of contents to quickly access information about a specific type of resource.
  • Page 31: Downloading Redistributables From Other Vendors' Web Sites

    Introduction The Source Location dialog box appears. Mark Wise Web Site and click Next. A Download Files dialog box appears while all available redistributable files are retrieved. The Available Redistributable Files dialog box then appears. From Redistributable Type, select the type of redistributable to download. In the Modules Available or Versions Available list, mark one or more check boxes for the redistributables to download.
  • Page 32: Product Documentation

    Introduction When the download is complete, return to the Available Redistributable Files dialog box and click Finish. The merge modules and other runtimes you selected are now in the directory you specified as the target location. If any merge modules had dependencies on other merge modules, those merge modules were also downloaded.
  • Page 33 The product release notes cover new features, enhancements, bug fixes, and known issues for the current version of this product. To access the release notes, select Release Notes from the Symantec program group on the Windows Start menu. Windows Installer Editor Reference...
  • Page 34: Chapter 2: Setting Up

    Chapter 2 Setting Up This chapter includes the following topics: How you can set up Windows Installer Editor on page 34 Setting Options on page 34 Creating and Editing Installation Templates on page 49 Component Rules on page 51 How you can set up Windows Installer Editor Before you create and edit installations, set up Windows Installer Editor to reflect your organization’s standards: Set options that control the installations you create and determine the installation...
  • Page 35: Setting General Options

    Setting Up Setting Merge Module Directories on page 45 Activating Suppressed Prompts on page 46 Setting Source Control Options on page 46 Setting Visual Studio Options on page 47 Setting Wildcard Groups on page 48 Setting General Options To set general options, select Tools menu > Options and click the General tab. In Visual Studio: Tools menu >...
  • Page 36: Setting .Net Assembly Options

    Setting Up Note Windows Installer Editor has its own code for merging a module into an .MSI, but this check box causes your merge to follow the Microsoft conventions for merging. Microsoft’s merging code adds a custom action to the installation for each predefined directory referenced in each included merge module.
  • Page 37 Setting Up Note (Visual Studio integrated editor.) To display context-sensitive help, click the Wise Help link on this dialog box. To set options: Select Tools menu > Options and click the .NET Assemblies tab. (In Visual Studio: Tools menu > Options > Wise Options > Assemblies.) Complete the tab. If the options on the .NET Assemblies tab are unavailable, install the .NET Framework and run a manual repair of the Windows Installer Editor .MSI from Add/Remove Programs.
  • Page 38: Setting Advertising Options

    Setting Up Always scan dependencies When you add a .NET assembly to an installation, Windows Installer Editor scans its manifest for dependencies and adds them to the installation. Rescan assembly dependencies on compile Mark this to scan for new assembly dependencies each time you compile. Rescan assembly attributes on compile Mark this to rescan and update assembly attributes each time you compile.
  • Page 39 Setting Up However, the .OCX or .DLL files must already be registered correctly on your computer. If you prefer not to register installation files on your computer, you can run the scan routine as a stand-alone utility on a different computer. Using WiseComCapture.exe on page 139.
  • Page 40: Setting Digital Signature Options

    Setting Up Setting Digital Signature Options You can add a digital signature to an installation on the Digital Signature page. You also can add a digital signature to a patch in Patch Creation. The Digital Signature options provide default settings for the Digital Signature page and Patch Creation.
  • Page 41: Setting Expressbuild Options

    Setting Up computer can be physical or virtual processors. You can also set up your own computer to provide processing power for another build computer. ExpressBuild speeds compile time by distributing the time-consuming task of compressing .CAB files among multiple processors. Therefore, the greatest time savings are realized when you have multiple .CAB files.
  • Page 42: How Expressbuild Groups Work

    Setting Up How ExpressBuild Groups Work on page 42. Build Group Domain Enter the NT domain name of the build group. All members of a single build group must be in the same NT domain. Allow My Computer to Build for Others Mark this to have this computer be available to help process compiles that are started on another build computer.
  • Page 43: Requirements For Using Expressbuild

    Setting Up Requirements for Using ExpressBuild In the following instances, because of .CAB formation issues, multi-processor compile does not take place and normal compiling occurs: If you select Uncompressed external files from the Compression Option field on the Media page. If you select One Cab in the Cab Options field on the Media page, or if the .MSI contains only one .CAB for some other reason.
  • Page 44 Setting Up To set options: To set options for Installation Expert, select Tools menu > Options and click the Installation Expert tab. In Visual Studio: Tools menu > Options > Wise Options > Installation Expert. Complete the tab. View directories for all features on Files page Mark this to display all directories on the Files or Visual Studio Solution page, regardless of what feature the directory was created for.
  • Page 45: Setting Merge Module Directories

    Setting Up Setting Merge Module Directories You can set default directories for storing merge modules. You can store merge modules on a local drive or a shared network drive. When you add a merge module to an installation, you can select from the merge modules in the directories you specify here.
  • Page 46: Activating Suppressed Prompts

    Setting Up Activating Suppressed Prompts Some of the prompts that appear in Windows Installer Editor contain a Don’t show this message again check box that lets you suppress the prompt in the future. To reactivate prompts that you previously suppressed Select Tools menu >...
  • Page 47: Setting Visual Studio Options

    Setting Up Check out file when it is opened If this is marked, then each time you open a file that has been previously checked in, the file will be automatically checked out for you. If your source code control system is not available, you can cancel attempts to connect and work on the local copy of the file.
  • Page 48: Setting Wildcard Groups

    Setting Up Never scan solution If you select this, you must add new files to installations manually using the Files page. Also, when files are removed from a solution, you must remove them from the installations manually. Prompt only when new files are detected Select this to be prompted each time there are new files in the solution that need to be added to the installation.
  • Page 49: Creating And Editing Installation Templates

    Setting Up Note (Visual Studio integrated editor.) To display context-sensitive help, click the Wise Help link on this dialog box. To add a wildcard group so it appears in Include Wildcards Select Tools menu > Options and click the Wildcard Groups tab. In Visual Studio: Tools menu >...
  • Page 50 Setting Up Templates\File contains templates for stand-alone files. To create a custom template in the Wise editor Select File menu > New. The New Installation File dialog box appears. Select a template file on which to base the new template and click OK. Only icons that have a corresponding file in the Templates directory are templates;...
  • Page 51: Component Rules

    Setting Up In the Templates list, select an icon on which to base the new template. Some icons are not templates, but instead invoke an import process or prompt to create a new transform. To create a template in .WSI or .WSM format, select a project icon (name ends with “Project”).
  • Page 52: About Component Rules

    Setting Up file, registry key, shortcut, or anything else that can be installed, components are created for those resources in accordance with the rule set you selected. Example: You can always create a new component for each new file added to the installation, or you can group related resources, such as help files, into one component.
  • Page 53 Setting Up naming certain types of components, then only the components that do not meet the conditions in the rule set will be named using the component key value options you specify here. To select a component rule set Select Component Rules menu > Select Rule Set. In Visual Studio: Project menu >...
  • Page 54: Using Component Rules To Align Guids In An Upgrade

    Setting Up Using Component Rules to Align GUIDs in an Upgrade Component rules can help you align component GUIDs in an upgrade with component GUIDs in previous versions of the installation. If GUIDS or key paths for the same component don’t match between the new and old .MSI, the component could inadvertently get deleted because Windows Installer does not recognize the components as being the same.
  • Page 55: Customizing Component Rules

    Setting Up Component Rules on page 51 Customizing Component Rules If the predefined component rule sets do not reflect your organization’s standards, you can create a new rule set. The predefined rule sets, Microsoft Best Practices and One file per component, are read-only and cannot be modified. However, you can copy a predefined rule set and modify the copy.
  • Page 56: Adding And Editing Component Rules

    Setting Up To copy the rule set, click Copy, type the new name on the Enter Rule Set Name dialog box, and click OK. To modify the rule set, click Modify. The Customize Component Rules dialog box appears, where you can add, edit, and delete rules. Adding and Editing Component Rules on page 56.
  • Page 57: Microsoft Best Practices Component Rule Set

    Setting Up To add or edit a component rule On the Name page of the Component Rule Wizard, enter a name for the new rule and click Next. If this is an existing rule, the name is already entered and you can accept or change it.
  • Page 58 Setting Up See Organizing Applications into Components and Changing the Component Code in the Windows Installer SDK Help. If an added resource does not meet the conditions in a rule, the next rule is evaluated for that resource. If the resource does not meet the conditions in any of the rules, the component is created according to the final rule.
  • Page 59: One File Per Component Rule Set

    Setting Up an incremental number is added to the component name. Example, File1, File2, and so on. See also: Component Rules on page 51 One File Per Component Rule Set When you use this predefined rule set, each file you add to the installation becomes its own component.
  • Page 60: Chapter 3: Working With Wise Installation Files

    Chapter 3 Working With Wise Installation Files This chapter includes the following topics: Before You Create an Installation on page 60 File Types on page 61 Project Files and Database Files on page 62 Target Platforms: 32-bit and 64-bit on page 63 Starting a New Installation (page 71) Options for New Installations...
  • Page 61: File Types

    Working With Wise Installation Files Any custom graphics, referred to as billboards, that should be displayed during installation. Any changes that should be made to the dialog boxes that will be displayed during installation. Using the Dialogs Page on page 395. If applicable, a Readme file and a license agreement file.
  • Page 62: Project Files And Database Files

    Working With Wise Installation Files Extension Description .MSP Windows Installer patch, which updates an existing installed application. Patches contain only the differences between the old and new versions of an application. Create a patch with the Patch Creation tool, which creates an .MSP file that you distribute to end users.
  • Page 63: Target Platforms: 32-Bit And 64-Bit

    Working With Wise Installation Files If you work in a .WSI or .WSM If you work in an .MSI or .MSM (Wise project) (Windows Installer database) How are installation Externally. The project contains paths to Inside the database file. Files are files and paths stored? the installation files.
  • Page 64: How To Specify The Target Platform

    Working With Wise Installation Files You cannot test, run, or debug a 64-bit installation on a 32-bit computer. See: How to Specify the Target Platform on page 64 What’s Different in a 64-bit Installation? on page 65 32-bit Applications on 64-bit Computers on page 66 Guidelines for Creating Platform-Specific Installations on page 67...
  • Page 65: What's Different In A 64-Bit Installation

    Working With Wise Installation Files Component Details dialog box To display this dialog box, select Setup Editor > Components tab, right-click a component, and select Details. The 64-bit component check box designates a component as 64-bit. This is marked when you add 64-bit .EXE and .DLL files or 64-bit registry keys. If this is not marked, the component is registered as a 32-bit component.
  • Page 66: 32-Bit Applications On 64-Bit Computers

    Working With Wise Installation Files System Search page The Read Registry Value dialog box, which you access from the System Search page, contains a check box that lets you include 64-bit components in a registry value search. Searching For a Registry Value on page 179.
  • Page 67: Guidelines For Creating Platform-Specific Installations

    Working With Wise Installation Files Resource Place 32-bit versions in Place 64-bit versions in Operating system components Windows\SysWOW64 directory Windows\System32 directory and shared libraries Registry keys Do one of the following: Do one of the following: Place the keys in the 32- Place the keys in the 62-bit registry view.
  • Page 68: Creating Multiple, Platform-Specific Installations From One Project File

    Working With Wise Installation Files 64-bit Installations That Contain Some 32-bit Components Select the appropriate target platform for each feature, and add the correct type of component to each one. Do not add a 64-bit component to a 32-bit feature, and vice versa, because it will never be installed.
  • Page 69 Working With Wise Installation Files Organize the project by component. This method results in fewer features and possibly less duplication. However, in a large installation, it might be less efficient to have to assign a target platform to each component. To organize a mixed-platform project by feature On the New Installation File dialog box, select x64 as the target platform.
  • Page 70 Working With Wise Installation Files Graphic64.msi, which installs both 32-bit and 64-components and runs on x64 platforms only. Its Template Summary property is set to x64. To organize a mixed-platform project by component On the Features page, create a single set of features and set their target platform to All Processors.
  • Page 71: Defining The Installdir Property In A Mixed-Platform Installation

    77. To start a new installation in the Wise editor Select Start menu > Programs > Symantec > Wise Installation Express > Windows Installer Editor. The New Installation File dialog box appears. If it does not appear, select File menu >...
  • Page 72: About Standard User Installations

    Working With Wise Installation Files In the Categories list, click Predefined Templates. In the Templates/Tools list, click the Windows Application icon. A Windows Application installation is a standard installation intended for a Windows computer or server. In the File type section, specify the type of file to create: Create an .MSI (Windows Installer database), which is a distributable installation.
  • Page 73: Creating An Installation For Standard Users

    Working With Wise Installation Files On the Files page, a warning message appears when you try to add a file to a protected area. On the Registry page, a warning message appears when you try to add a registry key to a protected area. The DisableUAP property is set, which hides the option to install for all users or the current user on the installation’s User Information dialog box.
  • Page 74 Working With Wise Installation Files the other projects in the solution, additions or changes you make in the other projects can be added to the installation automatically. See How the Installation Integrates With the Solution on page 83. Each Visual Studio installation project contains settings that control how it interacts with other projects in the solution.
  • Page 75: Creating A Stand-Alone Installation

    Working With Wise Installation Files Click Finish. An installation project is created in the location you specified and is listed in Solution Explorer. A corresponding .WSPROJ file (Visual Studio project) is created in the same location. Double-click the .WSI file in Solution Explorer. The installation opens.
  • Page 76: Creating A Device Driver Installation

    Working With Wise Installation Files Starting a New Installation on page 71 Creating a Device Driver Installation You can create an installation that supports Microsoft Driver Install Frameworks (DIFx). Microsoft created the Driver Install Frameworks to significantly improve the quality of device driver installations.
  • Page 77: Options For New Installations

    Working With Wise Installation Files The driver package’s .INF file must be the first file added to this directory so that it becomes the key path of the component. Add the other files that make up the driver package to the same directory that contains the .INF file.
  • Page 78: Entering Project Settings

    Working With Wise Installation Files Palm Application Opens the Palm OS wizard, which lets you add Palm OS files to a desktop installation. The wizard is also accessible from the Mobile Devices page. Adding Palm OS Files on page 221. Transform Lets you change any aspect of an installation by creating a transform based on changes that you make to the installation.
  • Page 79: Overview Page

    Working With Wise Installation Files The Property Pages dialog box appears. Available pages are: Projects, Project Outputs, Main Project, Pre-build Event, and Post-build Event. Note The Property Pages dialog box contains a link to the Configuration Properties page, however, configuration properties do not apply to Wise editor installation projects. See also: Overview Page on page 79...
  • Page 80: Projects Page

    Working With Wise Installation Files Projects Page Visual Studio integrated editor only. On the Projects page, you select projects to add to the installation you are creating. Access this page either from the Wise Setup Wizard when you create a new installation, or by right-clicking a project in a solution and selecting Properties.
  • Page 81: Main Project Page

    Working With Wise Installation Files Creating an Installation Within a Solution on page 73 Entering Project Settings on page 78 Main Project Page Visual Studio integrated editor only. On the Main Project page, you specify the main project and set options that affect the main project.
  • Page 82: Project Outputs Page

    Working With Wise Installation Files Access this page by right-clicking a project in Solution Explorer and selecting Properties. You can use any DOS command to create command lines for this build event. You can add as many command lines as needed. Project Outputs Page Visual Studio integrated editor only.
  • Page 83: How The Installation Integrates With The Solution

    Working With Wise Installation Files How the Installation Integrates With the Solution Visual Studio integrated editor only. When you add an installation to a Visual Studio solution, as described in Creating an Installation Within a Solution on page 73, the following items are added to the installation project: All primary outputs (.EXEs and .DLLs) of the projects in the solution, and all content files in the solution.
  • Page 84: Scanning The Solution For New Files

    Working With Wise Installation Files Scanning the Solution for New Files Visual Studio integrated editor only. Windows Installer Editor can scan projects in a solution for new output files that need to be added to the installation, and add those files to the installation. Scanning occurs when you: Load, save, or build an installation project within a solution.
  • Page 85: Comparing Windows Installer Files

    Working With Wise Installation Files At the end of the development cycle, you can turn the scanning off altogether so you don’t introduce any new files into the installation. See also: How the Installation Integrates With the Solution on page 83 Comparing Windows Installer Files Visual MSIDiff™...
  • Page 86: Saving An Installation As Xml

    Working With Wise Installation Files Scroll through tables on the Tables tab, looking for the symbols for changed tables. Click on changed tables to view differences in rows, which are indicated by symbols and colors. As you work in the installation file, the symbols indicating changed items are updated dynamically.
  • Page 87: Compiling An Installation

    Working With Wise Installation Files If you have not named the installation file yet, name and save the installation file on the Save As dialog box. When the Save As dialog box reappears, specify the .XML file. The current installation is saved and exported to XML format. Compiling An Installation Compiling an installation compresses its files, builds .CABs if necessary, and creates the installation .MSI.
  • Page 88: Testing And Running An Installation

    Working With Wise Installation Files Build project name Compiles only the project you selected in Solution Explorer. If quick compile is enabled and you have already built this project, this command compiles only what has changed since the last build. Rebuild Solution Compiles all files in all projects in the solution.
  • Page 89: Testing An Installation

    Working With Wise Installation Files Note When working in a .WSI, you can set the installation to generate more than one installation program by adding releases to the Releases page. If you test, debug, or run an installation that contains multiple releases, you are prompted to select a release. Testing An Installation You run an installation in test mode, which does not install files or change the system.
  • Page 90 Working With Wise Installation Files Select the type of installation from the button menu: Force Reinstall Normally, if an application is installed and you try to install it again, Windows Installer prompts you to remove it. This option uses command lines to bypass the uninstall.
  • Page 91: Chapter 4: Defining An Installation Project

    Chapter 4 Defining an Installation Project This chapter includes the following topics: Project Summary Page on page 91 Product Details Page on page 91 General Information Page on page 95 Add/Remove Programs Page on page 96 Features Page on page 97 Managing Binary Resources on page 108 Project Summary Page...
  • Page 92 Defining an Installation Project To set product details Select Installation Expert > Product Details page and complete the page: Product Type (Read-only.) This displays Windows Installer for installations and Transform for transforms. Product Name Enter the name of the application, which by default is the name of the first directory you create on the Files page.
  • Page 93 Defining an Installation Project Product Code Every Windows Installer installation must have a unique product code, which is used as the principal identification for the application. Windows Installer Editor generates a product code in the form of a GUID, which ensures that no two applications ever have the same product code.
  • Page 94: Incrementing The Product Version

    Defining an Installation Project If you clear this check box, files that are set to be compressed are not re- compressed when you save or compile. Compression options are on the Media page. Increment version number on compile Mark this to increment the third section of the version when the installation is compiled.
  • Page 95: General Information Page

    Defining an Installation Project Reset the default directory for features that use this directory. Create a new directory as a child, or subdirectory, of an existing directory. Note When end users install your application, sometimes the installation directory defaults to the C drive, and other times it defaults to another drive.
  • Page 96: Add/Remove Programs Page

    Defining an Installation Project Author Enter the author or publisher of the application. This field often includes a copyright notice. Keywords Enter a list of keywords that the end user can use to search for this installation in Windows Explorer. Installer Version (Read-only.) This displays the minimum Windows Installer version required on the destination computer to run this installation.
  • Page 97: Features Page

    Defining an Installation Project Hide remove button Mark this to disable the Remove button for your application in Add/Remove Programs. End users will not be able to uninstall the application using Add/ Remove Programs. Support Information Page The following information appears under the Support Information link in Add/ Remove Programs.
  • Page 98 Defining an Installation Project Setting Features for Installation Types on page 186. In an installation with multiple releases, you can deselect certain features for certain releases on the Release Settings page. Defining a Feature and Component Set for a Release on page 196.
  • Page 99: Strategies For Organizing Files Into Features

    Defining an Installation Project On the Files page, add a file to each feature. Select the feature from the Current Feature drop-down list before adding the file. On the Dialogs page, clear the check box for Installation Type Dialog, and mark the check box for Select Feature Dialog.
  • Page 100 Defining an Installation Project assigned to the Core feature. Because they are siblings of the Core feature, an end user might install the text editor feature or the graphics editor feature without installing the core feature, which would break the installation. To avoid this problem, make the Core feature required;...
  • Page 101: Adding A New Feature

    Defining an Installation Project Conditions See also: Features Page on page 97 Creating Multiple, Platform-Specific Installations from One Project File on page 68 Adding a New Feature To add a new feature Do one of the following: In Installation Expert > Features page, click the feature name under which the new feature should appear.
  • Page 102 Defining an Installation Project set in this drop-down list determines the default state of the feature during installation. The drop-down list provides a way to set common options quickly. The icon itself provides a visual cue that indicating which options have been set. The drop-down list options are a subset of the options that are available in the Feature Details dialog box, which you access by clicking the Details button at the right of the Features page.
  • Page 103: Configuring A Feature Using The Feature Details Dialog

    Defining an Installation Project Hidden from user Prevent the feature from appearing to the end user on the installation’s Select Features dialog box. You can set this option in combination with any one of the other options above. (This option corresponds to setting Hidden in the Display drop- down list on the Feature Details dialog box.) See also: Features Page...
  • Page 104 Defining an Installation Project All Processors The feature appears for installation on any computer, regardless of the platform. 32 Bit Processors The feature appears for installation on 32-bit computers only. 64 Bit Processors The feature appears for installation on 64-bit computers only. x64 Only The feature appears for installation on computers that support the x86 architecture (including AMD64 or EM64T).
  • Page 105 Defining an Installation Project Note The end user’s action on the Installation Type dialog box determines the INSTALLLEVEL property. To see how this works, go to Setup Editor > Dialogs tab and click the Installation Type dialog in the list. Double-click the Typical/Complete/ Custom radio button, and you see that the end user’s choice in this radio group sets the property InstallMode.
  • Page 106: Using Conditions With Features

    Defining an Installation Project None By default, the feature is set to be installed, not advertised. Favor Advertising By default, the feature is set to be advertised. Disallow Advertising The feature is set to be installed, not advertised, and the end user cannot change the default.
  • Page 107: Adding And Deleting Feature Conditions

    Defining an Installation Project features are listed in the Current Feature drop-down list, which appears on all Installation Expert pages in the Feature Details page group. Just as you can specify options on a per-feature basis, you can also specify options on a per-condition basis. Options on these pages that you associate with a condition are installed only if the condition is true and the feature is installed.
  • Page 108: Managing Binary Resources

    Defining an Installation Project Click OK on the Feature Condition dialog box. The condition appears in the Current Feature drop-down list. If you want to make file changes or other system changes on the destination computer only if this condition is true, you first select this condition from the Current Feature drop-down list.
  • Page 109: Adding Binary Resources

    Defining an Installation Project File Name Path to the source file that contains the binary data <Unspecified> in this column indicates that the source file is not known. (Example: This is the case when an installation includes a third-party .MSI.) Unspecified entries are stored in the .MSI and cannot be updated during compile.
  • Page 110: Refreshing Binary Resources

    Defining an Installation Project Create/update link to refresh data when file changes Mark this to update the data during compile with any modification you might have made to the source file. This also marks the check box in the Refresh column on the Resources page.
  • Page 111 Defining an Installation Project Managing Binary Resources on page 108 Windows Installer Editor Reference...
  • Page 112: Chapter 5: Assembling An Installation

    Chapter 5 Assembling an Installation This chapter includes the following topics: Files Page on page 112 Visual Studio Solution Page on page 140 Registry Page on page 145 INI Files Page on page 154 Shortcuts Page on page 156 Adding an Environment Variable on page 159 Adding File Associations on page 160...
  • Page 113 Assembling an Installation Files page in Windows Installer Editor Current Feature drop-down list Directories available to your Files in the computer directory selected on the left Directories to be installed on Files or the destination operations to be computer installed on the destination computer The Windows directory represents the system directory...
  • Page 114: Installation Directories

    Assembling an Installation Delete (lower left) Remove a directory from the installation. This does not delete it from the destination computer. Details (lower left) On the Files page, use this to set NTSF permissions. Wildcards Update settings of a directory in the installation. Editing Settings for Automatic Updating on page 125.
  • Page 115: Files Page Icons

    Assembling an Installation Program Files (x86) (64-bit installations only.) A 64-bit system has two directories for program files: Program Files, in which 64-bit applications and components are installed; and Program Files (x86), in which 32-bit applications and components are installed. 32-bit Applications on 64-bit Computers on page 66.
  • Page 116: Adding Files To An Installation

    Assembling an Installation File to be copied on the destination computer New location of file to be copied on the destination computer See also: Files Page on page 112 Visual Studio Solution Page on page 140 Installation Directories on page 114 Adding Files to an Installation If you add the same file to multiple locations, it is considered a duplicate file entry.
  • Page 117 Assembling an Installation To add files from the Features tab in Setup Editor On the Features tab, expand a feature and then expand its Combined folder. Expand the Files icon. If the Files icon does not appear, right-click and select Hide Empty Folders/Items. To add a new directory, right-click a directory and select New >...
  • Page 118: Adding Merge Modules Instead Of Files

    Assembling an Installation See also: Files Page on page 112 Visual Studio Solution Page on page 140 Installation Directories on page 114 Files Page Icons on page 115 Adding Contents of Directories to the Installation on page 119 Adding Files From Outside the Solution on page 120 Adding .NET Assemblies to the Installation on page 122...
  • Page 119: Adding Contents Of Directories To The Installation

    Assembling an Installation Hide; Don’t automatically add merge modules Avoid seeing this dialog box in the future and never replace files with the corresponding merge modules. This turns the dialog box off for all instances in which it would normally appear. To make the dialog box appear again, click the Prompts tab in Wise Options and activate the dialog box.
  • Page 120: Adding Files From Outside The Solution

    Assembling an Installation Include Subdirectories Mark this to add all the subdirectories within the directory you’re adding. The wildcard settings and update installation settings apply to the subdirectories also. Update installation as files are added or removed from source directory Mark this to dynamically update the installation when the contents of the directory you’re adding change on your computer.
  • Page 121 Assembling an Installation copied and the dialog box will not appear again for that file. If you do not copy source files with the Copy Source Files dialog box, you can use Convert Source Paths instead. Source Paths in an Installation on page 306.
  • Page 122: Adding .Net Assemblies To The Installation

    Assembling an Installation Adding .NET Assemblies to the Installation Note The ability to create .NET installations is supported only by Windows Installer 2.0 or later. When you create a .NET installation, you can use the Files page to add .NET assemblies. In the Visual Studio integrated editor, you also can use the Visual Studio Solution page.
  • Page 123: How Assembly Dependencies Are Added To An Installation

    Assembling an Installation See also: Files Page on page 112 Visual Studio Solution Page on page 140 Installation Directories on page 114 How Assembly Dependencies are Added to an Installation When you add a .NET assembly to an installation, and the assembly has dependencies on other files, you can add the dependency files to the installation in the following ways: You can add the dependency files manually.
  • Page 124: About Dependency Scan Exclusions

    Assembling an Installation About Dependency Scan Exclusions When you add a .NET assembly to an installation, Windows Installer Editor can scan the assembly’s manifest for dependencies and either add the dependencies to the installation or prompt you to select the dependencies to add. You can use the following exclusion lists to exclude dependencies from assembly scans: Project dependency A project dependency exclusion list is maintained for every...
  • Page 125: Editing Settings For Automatic Updating

    Assembling an Installation The regular expression represents a wildcard in regular expression syntax. For information on regular expression syntax, search for “Regular Expression Syntax” in the MSDN Library (msdn.microsoft.com/library/). The dotnetexclude.xml file overrides all the hard-coded exclusions. To retain the hard- coded exclusions, add them to the XML file.
  • Page 126 Assembling an Installation Whenever the contents of directories in the Source Directory list change, the installation directory is updated, based on the wildcard settings. Example: Suppose you link the directory C:\Directory and enter *.exe in Include Wildcards. Later you add Editor.exe to C:\Directory and remove Paint.exe from C:\Directory. This installation is updated so that it contains Editor.exe and does not contain Paint.exe.
  • Page 127: Removing A File From The Destination Computer

    Assembling an Installation Never overwrite if key path exists Mark this to prevent the installation of this component if the file, registry entry, or ODBC data source specified as the key path is already present. Click OK. If a change in the wildcards causes files to be deleted, the Wildcard Deleted Files dialog box appears.
  • Page 128: Copying And Moving Files On The Destination Computer

    Assembling an Installation Directory Specify the directory on the destination computer where the file is located or create a new subdirectory. To create a new subdirectory, select a directory and click New Folder. File Name Specify the name of the file to be removed. You can use wildcards to select multiple files or you can mark All Files to select all files in the selected directory.
  • Page 129: Editing File Details

    Assembling an Installation b. Click Operation below the lower-right list box and select Copy File or Move File. In Setup Editor, on the Components or Features tab, right-click a component or feature, select New, and select Copy File or Move File. The Copy File Details or Move File Details dialog box appears.
  • Page 130: Editing General File Details

    Assembling an Installation Note When you add an operation to remove, move, or copy a file on the destination computer, an entry for that operation appears on the Files page in the lower-right list box. Because the entry is an operation to be performed on a file on the destination computer, you cannot edit its attributes.
  • Page 131 Assembling an Installation In the Visual Studio integrated editor, you also can use the Visual Studio Solution page. In Setup Editor: On the Components or Features tab, select one or more files and select Details from the right-click menu. The File Details or Multiple Files dialog box appears. Click the General tab.
  • Page 132: Setting Permissions For Files And Directories

    Assembling an Installation Self-Register OCX/DLL (Multiple Files dialog box only.) Many files support self-registration (examples: many .OCXs and some .DLLs). Mark this to self-register these files during the installation with an unordered registration method. Duplicate Files This appears only if this file was added to the installation more than once. The duplicates are listed here for informational purposes only.
  • Page 133: Editing Self-Registration Settings For Files

    Assembling an Installation To set permissions, mark the check boxes. You can add multiple users. Warning If you set permissions for a folder that is written to by this installation, be sure that the user installing this application has privileges to write to the folder. Example: Suppose you give write privileges to ASPNET_USER for Program Files\SampleFolder, which later in this installation has files written to it.
  • Page 134: Editing Assembly Settings For Files

    Assembling an Installation This check box is enabled only if you have the .NET Framework installed on your computer, and if the file you are viewing is an assembly that was written to allow COM interop. When the Application Type on the Product Details page is Mixed (.NET and Win32), this check box is marked by default.
  • Page 135: Creating A Win32 Assembly

    Assembling an Installation For information on obtaining assembly attributes, see Creating a .NET Installation Without the .NET Framework on page 237. Show reference in Visual Studio .NET Mark this to add a registry key that displays this assembly as a reference in Visual Studio on the destination computer.
  • Page 136 Assembling an Installation Warning Isolation does not work on all applications. Applications must be written according to Microsoft programming guidelines to work with operating system isolation methods. (Example: If an application hard-codes paths to support files, isolation might not work.) For details, see the following topics in the Windows Installer SDK Help: Isolated Components, Installation of Win32 Assemblies, Side-by-Side Assemblies.
  • Page 137: Editing Xml Files During Installation

    Assembling an Installation See also: Editing File Details on page 129 Editing Assembly Settings for Files on page 134 Editing XML Files During Installation When you add an XML file to the Files page, and then get details for the XML file, the Dynamic Content tab appears, which shows the file’s contents.
  • Page 138: Editing Difxapp Options

    Assembling an Installation Editing File Details on page 129 Editing DIFxApp Options When an installation contains a device driver that meets Microsoft Driver Install Frameworks (DIFx) driver requirements, you can use Microsoft’s Driver Install Frameworks for Applications (DIFxApp) to install the driver. Creating a Device Driver Installation on page 76.
  • Page 139: How Self-Registration Information Is Captured

    Assembling an Installation How Self-Registration Information is Captured When you add a .DLL or .OCX file containing COM self-registration information to an installation, its registration information is scanned and the appropriate registry keys are added to the installation. This system of registration is more robust than letting the file self-register at installation time because it does not depend on the presence of other files on the destination computer or on how well the .OCX or .DLL file adheres to self- registration conventions.
  • Page 140: Visual Studio Solution Page

    Assembling an Installation /u self-unregisters the files after the extraction is finished. Input_COM_Full_pathname is the path to the file or files that should be self- registered. Output_REG_pathname is the path and file name of the .REG file to which the registry information will be extracted.
  • Page 141 Assembling an Installation Change file details Define which output groups are included in the solution scan. Changes that you make on the Visual Studio Solution page affect the output group settings on the Project Outputs page in the project settings. Project Outputs Page on page 82.
  • Page 142 Assembling an Installation Adding Contents of Visual Studio Projects to the Installation on page 143. Use the following buttons: Add Contents Add the contents of an output group to the installation. Adding Contents of Visual Studio Projects to the Installation on page 143.
  • Page 143: Adding Contents Of Visual Studio Projects To The Installation

    Assembling an Installation Adding Files From Outside the Solution on page 120 Adding .NET Assemblies to the Installation on page 122 Editing File Details on page 129 How Self-Registration Information is Captured on page 139 Adding Contents of Visual Studio Projects to the Installation Visual Studio integrated editor only.
  • Page 144: Visual Studio Solution Page Icons

    Assembling an Installation Maintain directory structure This maintains the directory structure for the files of an output group. Select this option when the files in an output group need to maintain their directory structure to function properly in the installation. This option is selected by default for non-build output groups (examples: Content Files and Documentation Files output groups).
  • Page 145: Registry Page

    Assembling an Installation See also: Visual Studio Solution Page on page 140 Registry Page Use the Registry page to specify the registry entries to be installed, removed, or edited on the destination computer. You can either add registry entries manually or import a registry file (.REG).
  • Page 146 Assembling an Installation Registry page in a 64-bit installation On a 64-bit computer, the 64-bit registry is visible here. The button The button menu lets you menu lets you add keys to the add values to 32-bit or 64-bit the 32-bit or registry.
  • Page 147: Adding Registry Keys

    Assembling an Installation Details Edit registry key settings. See also: Adding Registry Keys on page 147 Removing Registry Entries From the Destination Computer on page 148 Importing and Exporting Registry Entries on page 150 Configuring General Registry Settings on page 151 Setting Permissions for Registry Keys on page 153 Special Registry Keys...
  • Page 148: Removing Registry Entries From The Destination Computer

    Assembling an Installation From Current Feature, select a feature or condition. (Because any item you add must be assigned to a specific feature, you cannot add an item when All Features is selected.) Items that you add to a feature are installed on the destination computer only if the feature is installed.
  • Page 149 Assembling an Installation Warning Be very careful when removing registry entries from the destination computer. Do not remove registry entries unless you are sure that they are not used by another application. To add a remove registry operation in Installation Expert Select Installation Expert >...
  • Page 150: Importing And Exporting Registry Entries

    Assembling an Installation Click OK. The remove registry operation appears in the upper-right pane. To edit it, double-click its name. To delete it, use the right-click menu. To remove multiple registry keys from the destination computer Select Installation Expert > Registry page. From Current Feature, select a feature or condition.
  • Page 151: Configuring General Registry Settings

    Assembling an Installation In the lower-left list box, right-click the key to export, and select Export to .REG File. To export all keys that you have designated for the destination computer, right-click the Destination Computer icon. In Setup Editor, on the Components or Features tab, right-click the Registry icon or a registry folder and select Export to .REG File.
  • Page 152 Assembling an Installation Remove value during install This value is removed from the registry key. On the Registry page, a red exclamation point appears over the icon of the registry value you selected. This option appears only when you access the Registry Details dialog box from the Registry page.
  • Page 153: Setting Permissions For Registry Keys

    Assembling an Installation Binary / Hex (REG_BINARY) Identifies the value as a binary in hexadecimal notation. Do not use spaces, commas, or other characters to separate the bytes. Example: AD30C0A94020A8FC4C0008. Click OK. Setting Permissions for Registry Keys Use the Registry Key Permissions dialog box to set permissions to protect your application’s registries against accidental deletion or changes.
  • Page 154: Ini Files Page

    Assembling an Installation INI Files Page Use the INI Files page to: Update the contents of an existing .INI file, such as System.ini. Create an .INI file and write installation properties to it. You cannot use this page to delete part or all of an .INI file. The left list box on this page represents the directory tree of the destination computer, and the right list box contains .INI entries you add to the installation.
  • Page 155 Assembling an Installation In the left pane, select a folder and click New File. The INI File Details dialog box appears. Complete the dialog box; see below. Click OK. The INI File entry appears in the right list box. To edit it, double-click its name. To delete it, use the right-click menu.
  • Page 156: Shortcuts Page

    Assembling an Installation Shortcuts Page The Shortcuts page lets you add, edit, and delete shortcuts for files in the installation, and add icons for shortcuts you will install. You also can create a shortcut for a file on the destination computer that’s not in the installation. Shortcuts for files that have associated shortcuts are created automatically if you select one of the scan advertising options from the Advertising Setting drop-down list in Wise Options.
  • Page 157: Editing A Shortcut Configuration

    Assembling an Installation Command Line Mark this to have the shortcut execute a command-line statement. Use this option to open a file that’s not part of the installation, but only if you’re sure the file exists on the destination computer. Command Line Enter the entire command-line statement, including arguments and other command-line options.
  • Page 158 Assembling an Installation In Setup Editor, on the Components or Features tab, expand the component or feature that contains the shortcut. Click the Shortcuts icon and double-click the shortcut in the upper-right pane. If the Shortcuts icon does not appear, right-click and select Hide Empty Folders/ Items.
  • Page 159: Adding An Environment Variable

    Assembling an Installation Feature To associate this feature with a different shortcut, select the feature. Because non-advertised shortcuts cannot be associated with a feature, this field is enabled for advertised shortcuts only. To select a new icon, click New Icon and specify the icon. Click OK.
  • Page 160: Adding File Associations

    Assembling an Installation Adding File Associations Use the File Associations page to associate file extensions with executables to determine which application to start when the end user double-clicks a file with a certain extension. You can associate file extensions with any executable file in an installation. File associations are a type of advertising and are stored in the registry.
  • Page 161: Determining Extension Settings

    Assembling an Installation Click Browse to select the executable to use for the extension. You can only select executables that you have already added to the installation. From Extension, select the extension to use. This list shows all available extensions on your computer.
  • Page 162: Selecting Mime Types

    Assembling an Installation To add a command verb Click the Command Verbs tab on the File Associations Details dialog box. Adding File Associations on page 160. Click Add to add a new action or double-click an action. The Verb Details dialog box appears. Complete the dialog box: Verb Enter or select the action to be performed when the end user selects the...
  • Page 163: Adding A Service To The Destination Computer

    Assembling an Installation Application files that can be installed as a service are: .EXE, .VXD, .SYS, or .386. Adding a Service to the Destination Computer You can add a service to an installation from Installation Expert or Setup Editor. After you add a service, you can set options to start, stop, and delete services on the destination computer.
  • Page 164: Controlling Services On The Destination Computer

    Assembling an Installation Executable Displays the file you selected on the Select File dialog box, which runs the service. Arguments Enter any arguments to be passed to the service on the command line at startup. Login Username, Password Enter the Windows account information for the account the service is to run under.
  • Page 165 Assembling an Installation Adding a Service to the Destination Computer on page 163. To control a service Do one of the following: Select Installation Expert > Services page. a. From Current Feature, select a feature or condition. (Because any item you add must be assigned to a specific feature, you cannot add an item when All Features is selected.) Items that you add to a feature are installed on the destination computer...
  • Page 166: Adding An Odbc Item

    Assembling an Installation Adding an ODBC Item You can use Installation Expert or Setup Editor to define the ODBC (Open Data Base Connectivity) data sources, drivers, and translators to include in an installation. For information about ODBC, consult technical documentation provided by Microsoft. To add an ODBC item Do one of the following: Select Installation Expert >...
  • Page 167: Setting Odbc Driver Details

    Assembling an Installation Register Per Machine, Register Per User Mark Register Per Machine to give all users on the destination computer access to the data source, or mark Register Per User to give only the user who installs the application access to the data source. Source Attributes Enter attributes for the data source, one per line, in keyword=value format.
  • Page 168: Adding To The Windows Firewall Exception List

    Assembling an Installation Adding to the Windows Firewall Exception List The Windows Firewall that is included with Windows XP SP2, Windows Server 2003 SP1, and later, controls which applications and ports on the destination computer can accept incoming traffic from the Internet or a network. When Windows Firewall detects incoming traffic, it blocks the connection and prompts the end user to block or allow the connection.
  • Page 169 Assembling an Installation Application file. Do this to allow traffic to this specific file through any port. Go to step 5. Port. Do this to allow traffic from any application through this specific port. Go to step 6. To add an application file: On the Exception Type dialog box, mark Application and click Next.
  • Page 170: Chapter 6: Your Installation On The Destination Computer

    Chapter 6 Your Installation on the Destination Computer This chapter includes the following topics: About System Requirements on page 170 Performing a System Search on page 174 Setting Version-Specific Windows Installer Options on page 181 Setting Features for Installation Types on page 186 About System Requirements You can define system requirements for an installation in two different areas of Windows...
  • Page 171 Your Installation on the Destination Computer Requirements that begin with “All” or “Do not check” indicate that this requirement is not checked. Any requirement you select includes not only the requirement but also any greater value. Example: Selecting a Windows version of Windows XP lets an installation run on any computer with Windows XP or any later versions of the same operating system.
  • Page 172: Setting A System Requirement For Server Roles And Services

    Your Installation on the Destination Computer Adding Prerequisites to a Release on page 200. SQL Server Version Use this option to check for the presence of SQL Server. By default, this value is not checked. This option is useful if you have set up this installation to configure a Microsoft SQL Server on the SQL Server Scripts page.
  • Page 173: Adding Roles And Services To The Server Roles And Services Dialog Box

    To add server roles and services to the Server Roles and Services dialog box Access the roles.txt file and remove its Read-only attribute. By default, the file is in the Program files\Symantec\Wise\Windows Installer Editor directory. Open the roles.txt file. Below the last entry, type SVFT_ followed by the value for the server role or service.
  • Page 174: Setting A Requirement By Creating A Launch Condition

    Your Installation on the Destination Computer Setting a Requirement by Creating a Launch Condition You can use launch conditions to check system requirements on the destination computer. (Example: The value of properties or environment variables.) Windows Installer defines several properties at run time that are useful for defining conditions. See Hardware Properties and Operating System Properties in the Windows Installer SDK Help.
  • Page 175: Searching For Files Or Directories

    Your Installation on the Destination Computer To find any files, directories, .INI files, registry entries, or components of a previous version of your application. You can specify the items to search for and then code the installation so the new version is placed in the same location as the previous one, rather than in a default location.
  • Page 176 Your Installation on the Destination Computer Search all fixed drives for a file Searches all permanent attached drives for the file. You determine how many levels down the search is performed by entering a search depth. This operation returns the entire path to the file. Example: C:\Program Files\Application\Application.exe.
  • Page 177: Searching For Items In .Ini Files

    Your Installation on the Destination Computer Min. Size The file’s size must be equal or greater than this number. Leave the default value of 0 to ignore the file size. Max. Size The file’s size must be equal or less than this number. Leave the default value of 0 to ignore the file size.
  • Page 178 Your Installation on the Destination Computer Property Specify a property name. It will hold the result of the search, which is a file name, directory path, or other value, depending on the operation performed by the search. If you’ve already defined a new public property (all uppercase) in the Properties icon on the Product tab, then you can select it from the list;...
  • Page 179: Searching For A Registry Value

    Your Installation on the Destination Computer To test the search, add a text box on one of the dialog boxes in the installation. In the text box’s Control Text field, enter the property name (surrounded by brackets) that you assigned to this search. (Example: [MY_PROPERTY].) This causes the value of the property to be displayed on the dialog box.
  • Page 180: Searching For A Previously-Installed Component

    Your Installation on the Destination Computer Value Name Enter the name of the registry value. To find the default registry value, leave this blank. Search 64-bit portion of the registry (64-bit installations only.) Mark this to find registry keys that are designated as 64-bit components.
  • Page 181: Setting Version-Specific Windows Installer Options

    Your Installation on the Destination Computer Read directory name from component keypath Select this operation if the component you are searching for contains only an empty directory (a Create Directory item) and has an empty key path. This operation returns a directory path. (Example: C:\Program Files\Application\.) If the keypath for this component is a file, ODBC item, or registry item, this operation fails.
  • Page 182 Your Installation on the Destination Computer Elevate Deferred Execution sequence only This is the preferred option for most installations. Typically, actions that require elevation should be in the Execute Deferred sequence. At run time, when the installation reaches the Deferred Execution sequence, the user is prompted for administrator credentials.
  • Page 183: About Uac Elevation Of Windows Installer Installations

    Your Installation on the Destination Computer To set logging options for installations that will run under Windows Installer 4.0 or later, mark the appropriate check boxes: ! - Flush each line to the log a - Start up of actions Logs actions as they are started.
  • Page 184 Your Installation on the Destination Computer Options for elevating Windows Installer installations Option Description Elevate the Deferred In a typical MSI, only the Deferred Execution sequence should contain actions Execution sequence that write to a protected area on the destination computer. The installation runs in standard user mode until it enters the Execute Deferred sequence.
  • Page 185: About Uac Elevation Of An Entire Installation

    Your Installation on the Destination Computer Option Description Create a standard user If an application is written to be installed and run by standard users without installation with no elevation elevation, you can bypass UAC elevation issues. The installation cannot contain actions that access a protected area on the destination computer.
  • Page 186: Setting Features For Installation Types

    Your Installation on the Destination Computer installations. If you specified a name for the log file, only one log is created but it might appear to contain entries for two installations. This is normal. When the installation runs in maintenance mode, the installation is not elevated and a UAC prompt appears before the Execute Deferred sequence begins.
  • Page 187 Your Installation on the Destination Computer Description text This text appears next to the radio button on the Installation Type dialog box. To change the text for a specific installation type, select the installation type name in the upper-left list and change the text in the Description text box. Default features To set which features are turned on by default during installation, select an installation type name in the upper-left list and mark the check boxes of the...
  • Page 188 Your Installation on the Destination Computer Select Features dialog box Default features Windows Installer Editor Reference...
  • Page 189: Chapter 7: Organizing Your Installation Into Releases

    Chapter 7 Organizing Your Installation Into Releases This chapter includes the following topics: About Releases on page 189 Customizing a Release on page 194 Setting Build Options for a Release on page 199 Adding Prerequisites to a Release on page 200 Creating a Clean Build on page 206 Setting Up Media for Distribution...
  • Page 190: Creating A New Release

    Organizing Your Installation Into Releases Itanium edition Creating Multiple, Platform-Specific Installations from One Project File on page 68. Working With the Releases Page Use the following buttons: Details Edit a release. Add a new release. Creating a New Release. Delete Delete a release.
  • Page 191 Organizing Your Installation Into Releases To populate the file name or subdirectory with the value of one or more properties, enter one or more property names surrounded by brackets. Example: [ProductName].msi You can use one or more specific parts of a property’s value if its segments are period delimited.
  • Page 192: Associating A Release With Visual Studio Build Configurations

    Organizing Your Installation Into Releases Target Platform Select the target platform for this release. This determines the Template Summary property of the compiled .MSI. The initial default is set by the Target Platform option on the New Installation File dialog box. If the installation previously contained only 32-bit releases, designating a feature or release as 64-bit enables the 64-bit areas of the Files and Registry pages as well as other 64-bit-related areas of the interface.
  • Page 193: Outputting A Multiple-Language Release

    Organizing Your Installation Into Releases configuration, and the 64-bit release with the 64-bit configuration. Then, when you build the 64-bit configuration, only the 64-bit release is compiled. Platform configurations are not supported in Visual Studio 2003 or earlier. In those versions, you specify the build configuration only.
  • Page 194: Customizing A Release

    Organizing Your Installation Into Releases Creating a Language Transform on page 250. During compile, the transforms are packaged inside the .EXE along with the .MSI. .EXE that launches external .MSI When you select this, you can use language transforms or you can create a separate .MSI for each language.
  • Page 195: Customizing Properties For A Release

    Organizing Your Installation Into Releases The application doesn’t allow the end user to save files. The product’s name indicates it is an evaluation. The product’s summary informs the end user that this evaluation release doesn’t allow saving files. Note This page is enabled in a .WSI only. Customizing Properties for a Release Note This page is enabled in a .WSI only.
  • Page 196: Defining A Feature And Component Set For A Release

    Organizing Your Installation Into Releases End users can see the summary information by right-clicking the compiled .MSI or .EXE in Windows Explorer and selecting Properties. Note In Windows Vista and later, the file Properties dialog box does not contain summary information.
  • Page 197: Sharing Settings Between Releases

    Organizing Your Installation Into Releases To include a feature in this release, mark its check box. To exclude a feature, clear its check box. To select which components to include in this release: Click the feature name to display the feature’s components in the lower pane. Mark the check boxes of components to include.
  • Page 198: Example: Creating An Evaluation Release

    Organizing Your Installation Into Releases Example: Creating an Evaluation Release This example describes how you could define an evaluation release for an application. In this example: The release is named Sample Evaluation. The application’s summary dialog box indicates that this is an evaluation release. Potential customers can use the evaluation version indefinitely, but they can’t save any files.
  • Page 199: Setting Build Options For A Release

    Organizing Your Installation Into Releases Setting Build Options for a Release Note This page is fully enabled in a .WSI only. In an .MSI or .MST, you cannot add or delete. On the Build Options page, you can customize a release by selecting the format of output files and language options.
  • Page 200: Adding Prerequisites To A Release

    Organizing Your Installation Into Releases the new installation. This option is disabled when the Install the .MSI into an SVS layer option is selected. For this to work, the previous version must have been installed using Windows Installer technology. If not, then use the System Search page to search for a previous version.
  • Page 201: Adding A Windows Installer Or .Net Framework Runtime

    Organizing Your Installation Into Releases Adding a Windows Installer or .NET Framework Runtime on page 201. If necessary, add prerequisite files. Adding a Prerequisite File on page 202. If necessary, add runtime files. Adding a Runtime Prerequisite on page 204. For each prerequisite file and runtime file that you add in the lower pane, script is added to the WiseScript that creates the installation’s .EXE.
  • Page 202: Adding A Prerequisite File

    Organizing Your Installation Into Releases This option delays the restart to the end of the installation and minimizes restarts for the end user. This is enabled only if one of the Windows Installer Runtime Version fields is set to 2.0 or later. Normally, installing the Windows Installer runtime requires a restart at that point in the installation.
  • Page 203 Organizing Your Installation Into Releases Complete the dialog box: File Path Specify the prerequisite file to be run before the main installation. Command Line Specify the command-line options to apply to the prerequisite file at run time. If the prerequisite’s launch conditions fail, stop the .MSI installation Mark this to stop the main installation if the prerequisite file fails to run because of its launch conditions.
  • Page 204: Adding A Runtime Prerequisite

    Organizing Your Installation Into Releases Adding a Runtime Prerequisite If you need to distribute a runtime with an application, you can use the Prerequisites page to add the runtime to run before the main installation. A runtime is added as an include script to the WiseScript that creates the installation .EXE.
  • Page 205: Editing The Wisescript That Creates The Installation .Exe

    Organizing Your Installation Into Releases listed. To rearrange the order, select an item in the lower pane and click Move Up or Move Down at the right of the page. For each prerequisite file and runtime that you add in the lower pane, script is added to the WiseScript that creates the installation’s .EXE.
  • Page 206: Creating A Clean Build

    Organizing Your Installation Into Releases The changes you made to the WiseScript are deleted, and the ability to add and edit prerequisite files on the Prerequisites page is enabled. See also: About Script Editor in the WiseScript Editor Help Creating a Clean Build Note This page is enabled in a .WSI only.
  • Page 207 Organizing Your Installation Into Releases Click Browse under the Store clean build in source control option and specify where in the SCCS to store the project. Dialog boxes from your SCCS lead you through this process. In the Wise editor: If you are using the Source Control menu for version control on the entire installation, select a different folder in source control to store the clean build.
  • Page 208: Setting Up Media For Distribution

    Organizing Your Installation Into Releases Setting Up Media for Distribution Note This page is fully enabled in a .WSI only. In an .MSI or .MST, you cannot add or delete. The Media page lets you prepare an installation for distribution. Here, you specify compression, the media’s size, holding directories, and how features and components are organized on the media.
  • Page 209 Organizing Your Installation Into Releases To add a media item Select Installation Expert > Media page. From Current Release, select a release. Click Add at the right of the Media page. The Media Details dialog box appears. In Media Name, describe the media item you’re setting up. Examples: Compressed Application Files or Uncompressed Tutorial.
  • Page 210: Adding A Media Destination

    Organizing Your Installation Into Releases In the Custom Media Settings area, specify settings that are related to the size of your media. Share media destination/size info with previous media entry Gives a media item the same size and destination settings as its predecessor’s, therefore, mark this for the second and subsequent media items only.
  • Page 211: Including Features And Components In Media Items

    Organizing Your Installation Into Releases distribution media. If you don’t create media destinations, that is, destination directories, the files are copied to the directory where the .WSI file is located. Example: If your installation is so large that it needs two CDs, enter two destination directories.
  • Page 212: Sharing Media Settings Between Releases

    Organizing Your Installation Into Releases The installation has only one media item. You want to include every remaining feature and component that is not included in a previous media item. It doesn’t matter which files are on which medium. In any other case, use the Include Items for Media dialog box to select the features and components to include in the current media item.
  • Page 213: Example: Spanning An Installation Across Media And Sharing Media Size Information

    Organizing Your Installation Into Releases From Copy/Share Media Settings From, select the release that contains the settings to copy. Click OK. The settings of the release in Copy/Share Media Settings From immediately replace the settings of the release in Current Release. Any change you make to the media of either of the linked releases is applied to the other release, until you break the link.
  • Page 214 Organizing Your Installation Into Releases Compression Option Select Compress files into external Cab files. Cab Options Select One Cab (including modules). Max Media Size Enter 550 MB. Cluster Size Select 2048 Bytes. In the Media Destinations section, click Add. The Media Destination Details dialog box appears.
  • Page 215 Organizing Your Installation Into Releases Share media destination/size info with previous media entry. Mark this check box. Include Features/Components section Click Add and select the features and components to leave uncompressed. 14. Click OK. After compile, the destination directory CD 1 contains the .CAB file and as many uncompressed files as can fit on the CD.
  • Page 216: Chapter 8: Advanced Installations

    Chapter 8 Advanced Installations This chapter includes the following topics: About the Mobile Devices Page on page 216 About Command Lines on page 223 Adding a Digital Signature to an Installation on page 233 Creating an Installation for Microsoft SMS on page 235 Creating a .NET Installation When You Have the .NET Framework on page 236...
  • Page 217: Process For Adding Mobile Device Support To An Installation

    Advanced Installations Process for Adding Mobile Device Support to an Installation You can configure a Windows Installer installation to install files that support a mobile device application. Obtain the mobile device installation file or files. For Windows Mobile applications, the installation consists of one or more .CAB files.
  • Page 218: Adding Windows Mobile Files

    Advanced Installations The end user copies the .CAB file to the mobile device and opens it. The .CAB file extracts its contents to the directories that were specified in the .INF file. Uninstall of the mobile device application is controlled by the mobile device and ActiveSync.
  • Page 219 Advanced Installations The CAB Files dialog box appears. Complete the dialog box and click Next: Click Add, select one or more files, and click Open. Mark the following options if applicable: Include the .NET Compact Framework (Pocket PC 2002 or later only). Mark this to include the .NET Compact Framework runtime in the installation.
  • Page 220: About Palm Os Installations

    Advanced Installations After you create a mobile device entry, you might notice changes throughout Installation Expert, such as files added on the Files page, a shortcut on the Shortcuts page, and new custom actions added to MSI Script. Do not change or delete these items because doing so will cause the mobile device installation to fail.
  • Page 221: Adding Palm Os Files

    Advanced Installations Selects users on the Palm User Information dialog box, which lists all Palm users on the desktop computer. The Palm files are installed in the directories for the specified users. If the steps above are not followed, the files are installed for all Palm users. Installations that were created in a product earlier than Wise for Windows Installer 5.0 or Windows Installer Editor 4.5 might not contain the Palm User Information dialog box.
  • Page 222 Advanced Installations Application Name Enter the name of the application you are installing. This appears in the list of applications on the Mobile Devices page. Desktop Directory Specify a directory on the desktop computer in which to store the files that will be added to the Palm device.
  • Page 223: About Command Lines

    Advanced Installations About Command Lines Command lines change the behavior of an .EXE for different work environments and user requirements. You can work with two sets of command lines for installations: Command lines that you can apply Command lines that you can apply to to installations at run time Windows Installer Editor for compiling...
  • Page 224 Advanced Installations Note Although you can enter a command line in the Command Line field, we recommend that you use the options provided in this utility for an optimal, error- free installation. Click the General tab and complete the dialog box: Name Enter the name of the command line.
  • Page 225: Applying Ui Options To An Installation

    Advanced Installations Changing Public Properties in an Installation on page 229. Transforms Apply transforms to the installation package using the TRANSFORMS property. Applying Transforms to an Installation on page 230. Patches Add or remove patches using the PATCH and MSIPATCHREMOVE properties. Applying or Removing Patches With a Command Line on page 230.
  • Page 226: Applying Logging Options To An Installation

    Advanced Installations qf - Full UI Displays both modal and modeless dialog boxes that have been authored into the internal user interface, and built-in modal error-message boxes during the installation. qn+ - No UI Displays no user interface, except for a modal dialog box at the end of the installation.
  • Page 227 Advanced Installations Windows Installer SDK Help. You can set logging options for all versions of Windows Installer or for Windows Installer 3.0 and later. In Windows Installer 4.0 and later, you can set logging options in the installation instead of with a command line. Setting Version-Specific Windows Installer Options on page 181.
  • Page 228: Applying An Advertising Option To An Installation

    Advanced Installations Note This option is enabled only if Windows Installer 3.0 or later is installed on your computer. It will work on the destination computer only if it has Windows Installer 3.0 or later installed. Click OK. See also: Creating a Command Line To Apply to an Installation on page 223 Applying an Advertising Option to an Installation...
  • Page 229: Applying A Repair Option To An Installation

    Advanced Installations Applying a Repair Option to an Installation Not available in a transform. Command lines cannot be applied to a transform. You can use a command line to set a repair option for an installation that determines the files that are reinstalled during a repair. You also can specify whether files are rewritten, overwritten, or run from the source.
  • Page 230: Applying Transforms To An Installation

    Advanced Installations Creating a Command Line To Apply to an Installation on page 223. Note The Properties tab appears only when Install Mode on the General tab of the Command Line Details dialog box is set to Install or Network Install. Select a property in the left pane and click Add to copy it to the right pane.
  • Page 231: Command Line Options For Wfwi.exe

    Advanced Installations You can use a command line to update an installation by applying or removing patches. For information on patches, see PATCH Property and MSIPATCHREMOVE Property in the Windows Installer SDK Help. Prior to Windows Installer 3.0, you could only remove a patch by uninstalling the entire application.
  • Page 232 Advanced Installations Do not confuse this list of command-line options with the command-line options that you can apply at run time to an .MSI through the executable msiexec.exe. For a list of those command-line options, see Command Line Options in the Windows Installer SDK Help. Command-line options Description Compile only and exit...
  • Page 233: Wfwi.exe Command Line Option Example

    Advanced Installations WFWI.EXE Command Line Option Example The following example shows how to compile an installation from the command line. “path\WFWI.EXE” C:\Installers\MyApp.wsi /c /s /p CURRENT_FILES="E:\Test Development" /o C:\MyAppInstaller.msi The preceding command line does the following: Invokes the executable Specifies the .WSI to compile (C:\Installers\MyApp.wsi) Sets it to compile (/c) Sets all error messages to be suppressed (/s) Sets the property CURRENT_FILES (/p CURRENT_FILES="E:\Test Development")
  • Page 234 Advanced Installations This method requires a Personal Information Exchange file (.PFX), which is a container file for the public/private key information. This method is supported by the signtool.exe tool. For details, search for “Signtool” in the MSDN Library (msdn.microsoft.com/library/). Requirements You must have a valid code signing certificate, which you can obtain from a commercial certificate authority such as Verisign.
  • Page 235: Creating An Installation For Microsoft Sms

    Advanced Installations digitally signed installation is created, because the installation doesn’t create an .EXE file. Note The ability to add a digital signature to .MSI and external .CAB files is supported by Windows Installer 2.0 or later only. See also: Adding a Digital Signature to a Patch on page 288 Setting Digital Signature Options...
  • Page 236: Creating A .Net Installation When You Have The .Net Framework

    Advanced Installations Creating a .NET Installation When You Have the .NET Framework Windows Installer 2.0 or later only. The .NET Framework helps automate the process of building a .NET installation by extracting most of the assembly details from the assembly manifests and adding them to the installation.
  • Page 237: Creating A .Net Installation Without The .Net Framework

    Advanced Installations Creating a .NET Installation Without the .NET Framework Windows Installer 2.0 or later only. You can build an installation for a .NET application even if you do not have the .NET Framework installed on your computer. Perhaps your company’s development computers have the .NET Framework, but the computer you use to build installations does not.
  • Page 238: Configuring A Microsoft Sql Server During Installation

    Advanced Installations This command generates a .REG file containing the registry entries you need to allow the .NET assembly to be called as a COM component. Search for “Assembly Registration Tool (Regasm.exe)” in the MSDN Library (msdn.microsoft.com/library/). On the Registry page, import the .REG file you created for each assembly. Adding Registry Keys on page 147.
  • Page 239: Tips For Using The Sql Server Scripts Page

    Advanced Installations Items that you add to a feature are installed on the destination computer only if the feature is installed. Items that you add to a condition are installed only if the feature is installed and the condition is true. Click Add at the right side of the page.
  • Page 240: Setting Sql Connection Strings

    Advanced Installations See also: Configuring a Microsoft SQL Server During Installation on page 238 Setting SQL Connection Strings To set SQL connection strings Click the Connection tab on the SQL Script Details dialog box. Configuring a Microsoft SQL Server During Installation on page 238.
  • Page 241 Advanced Installations The statements appear on the Statements tab, where you can edit them. If you later change the file on disk, you must re-import the file to include the changes in the installation. To generate statements that recreate a database, click Recreate Database. The Recreate Database dialog box appears.
  • Page 242: Specifying Replacements In Sql Statements

    Advanced Installations Specifying Replacements in SQL Statements You can specify text strings to be found and replaced within the SQL statements during installation. To specify replacements in SQL statements Click the Replacement tab on the SQL Script Details dialog box. Configuring a Microsoft SQL Server During Installation on page 238.
  • Page 243 Advanced Installations To be able to import security settings using the .NET Framework Security page, you must have the .NET Framework installed on your computer. You create and configure .NET Framework security settings using the Microsoft .NET Framework Configuration tool, which is in Administrative Tools in your computer’s Control Panel. The .NET Framework security settings consist of a hierarchy of code groups.
  • Page 244: Mts/Com+ Page

    Advanced Installations not in bold type, they do not need to be deleted. They are removed when you exit the .NET Framework Security page. See also: About Microsoft .NET Technology on page 488 MTS/COM+ Page Use the MTS/COM+ page to add MTS or COM+ application packages to an installation. The MTS/COM+ page is intended for software developers who know the computer names of the servers that contain MTS or COM+ server applications.
  • Page 245 Advanced Installations From Current Feature, select a feature or condition. (Because any item you add must be assigned to a specific feature, you cannot add an item when All Features is selected.) Items that you add to a feature are installed on the destination computer only if the feature is installed.
  • Page 246 Advanced Installations MTS/COM+ Page on page 244 Windows Installer Editor Reference...
  • Page 247: Chapter 9: Translating An Installation

    Chapter 9 Translating an Installation This chapter includes the following topics: About the Languages Page on page 247 Defining and Translating Into Additional Languages on page 253 Translating Text Strings You Have Added or Changed on page 258 Resizing Dialog Controls After Translation on page 264 About the Language Menu on page 264...
  • Page 248 Translating an Installation Export text strings to a file that Do this when you define a new language, or you can send to a translator when you add or change any user interface elements in an installation. Exporting Selected Text Strings to a File page 259.
  • Page 249: Creating A Translated .Msi

    Translating an Installation Note The Languages page is unavailable for transforms. Edit languages in the base .MSI. Creating a Translated .MSI You can translate an installation to another language and have it compile to one or more .MSI files. A separate .MSI is created for the default language plus each language that is marked on the Languages page.
  • Page 250: Creating A Language Transform

    Translating an Installation Creating a Language Transform on page 250. Codepage, Language ID Leave the defaults in these fields. You typically only change these fields when you define a new language. Default release language (.WSI files only.) Mark this to use this language as the default language for this release.
  • Page 251: Sharing Language Settings Between Releases

    Translating an Installation In Destination File, specify the full path for the translated .MST; be sure to include the .MST file extension. If you specify an .MSI file instead of an .MST, this language is compiled to an installation database. Creating a Translated .MSI on page 249.
  • Page 252: Removing A Language From An Installation

    Translating an Installation Click OK. The link between the selected release and other releases is broken. The current settings of the releases are not changed, but changing settings for one release no longer affects the settings of the other release. Removing a Language from an Installation You can disable a language in an installation.
  • Page 253: Defining And Translating Into Additional Languages

    Translating an Installation Note This process does not restore any custom translated text. Defining and Translating Into Additional Languages If the language you need is not one of the 25 pre-translated languages, you can add it to the Languages page and add translated text for that language. Then you can translate installations into the new language.
  • Page 254: Defining A New Language And Exporting All Text For Translation

    Translating an Installation Define a new language on the Languages page. Export text strings to a file that you can send to a translator. Import translated text strings from a file to the installation. To use the New Language wizard Select Installation Expert >...
  • Page 255 Translating an Installation Destination File (Optional.) Specify the full path for the translated installation file. You can create an .MSI or a transform (.MST). If you leave this field blank, this language is always compiled to an .MSI whose name is created by adding an underscore and the language name to the installation file name.
  • Page 256: Importing All Text Strings After Translation

    Translating an Installation Export File and Directory Names Mark this to include the installation’s file and directory names in the export file. Click Finish. The text strings are exported to the file you specified, which you can send to a translator.
  • Page 257: Importing All Text Strings With The New Language Wizard

    Translating an Installation The translated text strings are imported into the installation and you can translate the installation to the new language. Creating a Translated .MSI on page 249 and Creating a Language Transform page 250. Importing All Text Strings With the New Language Wizard You can use the New Language wizard to import text strings at the same time you define a new language on the Languages page.
  • Page 258: Translating Text Strings You Have Added Or Changed

    Translating an Installation select the appropriate code page from the drop-down list. See Setting the Code Page of a Database in the Windows Installer SDK Help. Language ID Specify only one language ID for the language you are adding. Windows Installer supports only one language in this field.
  • Page 259: Translating Text Strings By Exporting To A File

    Translating an Installation If you are adding an entire new language, you can export all text strings in the installation, have them translated, and then import the translated strings to the installation. Defining and Translating Into Additional Languages on page 253. The translated text might require more space than the default language.
  • Page 260 Translating an Installation To export selected text strings Select Installation Expert > Languages page. From Current Release, select a release. Click Strings at the right of the page. The Language Strings dialog box appears. From Language, select the language to export text strings for. The drop-down list shows those languages that have translated text strings in this installation;...
  • Page 261: Importing Selected Text Strings From A File

    Translating an Installation Importing Selected Text Strings From a File When you add or change text strings in an installation that is translated to another language, you must export the changed text strings and have them translated. Exporting Selected Text Strings to a File on page 259.
  • Page 262: Translating Text On The Language Strings Dialog

    Translating an Installation dialog box control or a single file name. Rather than going through the process of exporting and importing changed text strings, you can make these changes yourself for each language. Example: Suppose you have translated an installation to German. Then you add a Cancel button to an existing dialog box.
  • Page 263: Changing Text In Installation Expert And Setup Editor

    Translating an Installation You can observe the change in the corresponding table in the Tables tab in Setup Editor. Similarly, you can change text in the Tables tab or the Dialogs tab, then observe the change here in the Language Strings dialog box. Changing Text in Installation Expert and Setup Editor.
  • Page 264: Resizing Dialog Controls After Translation

    Translating an Installation Table Columns you can translate and edit ListView Text Media DiskPrompt Property Value RadioButton Text, Help Shortcut Name, Description UIText Text WiseReleaseMediaDest DiskPrompt Resizing Dialog Controls After Translation Because some languages require more space than others, you might need to resize dialog box controls (examples: buttons and text boxes) to accommodate text expansion.
  • Page 265: Changing The Default Language

    Translating an Installation When you add or change text in the installation’s user interface elements, make sure Language menu > Default is selected. That way, the items are added or changed for all languages. If you change the user interface while a different language is selected, the change is made for that language only.
  • Page 266 Translating an Installation Installation Resources and Their Locations on page 29. From Save as Type, select Installer Projects (*.wsi). Click Save. The .WSI is saved and then is compiled to an .MSI. Only .MSIs appear in the New Installation File dialog box as templates. To test the new template: Select File menu >...
  • Page 267: About The Default Release Language

    Translating an Installation 10. Copy the .MSI file to the Templates\File directory. The location of the Templates directory varies. Installation Resources and Their Locations on page 29. 11. If you prefer to create a .WSI template, rename the file’s extension. If you have added files to the template, use MSI to WSI Conversion to create the .WSI template.
  • Page 268: About The Language Strings Dialog

    Translating an Installation Note Only one language per release can be the default release language. About the Language Strings Dialog The Language Strings dialog box, which appears when you click the Strings button at the right of the Installation Expert > Languages page, displays all translated and default text strings side by side.
  • Page 269: What Pre-Translated Languages Are Available

    Translating an Installation If the Changed column still reads Yes after you have imported text strings, one of two things happened: Formatting for the corresponding text string in the resource or text file was changed. (Example: This can happen if a tab in a text file was deleted or moved.) Try to reformat the resource or text file and then import it again.
  • Page 270: Language Ids

    Translating an Installation Language IDs Windows Installer uses language IDs to determine whether the destination computer supports the language that is used for the installation dialog boxes. Example: If you create an installation with the language ID for Greek, that installation only runs on a computer with Greek fonts.
  • Page 271 Translating an Installation Language Sublanguage Language ID ANSI (decimal codepage notation) Italian Italian (Standard) 1040 1252 Italian Swiss 2064 1252 Norwegian Norwegian (Bokmal) 1044 1252 Norwegian Norwegian (Nynorsk) 2068 1252 Polish 1045 1250 Portuguese Portuguese (Brazilian) 1046 1252 Portuguese Portuguese (Standard) 2070 1252 Romanian...
  • Page 272: Chapter 10: Distributing An Installation

    Chapter 10 Distributing an Installation This chapter includes the following topics: Package Distribution on page 272 Package Distribution When you complete and compile an installation, you can use Package Distribution to share or deploy it by: Copying an Installation to a Network Directory Copying an Installation to an FTP Server Performing an Administrative Installation Copying an Installation to Removable Media...
  • Page 273: Copying An Installation To An Ftp Server

    Distributing an Installation Complete the page: Network Directory Specify the directory to copy the package to. Destination File Name (Optional.) Enter an alternate name for the file that is saved to the network directory. Do not include a file extension. Click Finish.
  • Page 274: Performing An Administrative Installation

    Distributing an Installation FTP Upload Directory The directory on the FTP server to copy the package to. The first character must be a forward slash (/). Example: /published/installations. Click Next. The package is uploaded to the FTP server. A dialog box shows the status of the upload.
  • Page 275: Copying An Installation To Removable Media

    Distributing an Installation An executable version of the package is copied to the directory you specified. See also: Package Distribution on page 272 Copying an Installation to Removable Media Not available in the Visual Studio integrated editor. When an installation is ready to deploy to end users, you can use Package Distribution to copy the compiled installation to floppy disks or other removable media, such as zip disks.
  • Page 276 Distributing an Installation Setup Filename Enter the name for the final installation file. You do not need to enter an extension. If you leave this blank, the final installation file is named the same as the currently-open installation file. Erase Disk Before File Copy Mark this to erase the target disk before copying the installation onto it.
  • Page 277: Chapter 11: Upgrading Applications

    Chapter 11 Upgrading Applications This chapter includes the following topics: About Upgrading Applications on page 277 Preparing for Software Updates on page 277 UpgradeSync on page 280 Patch Creation on page 282 Upgrades on page 292 About Upgrading Applications Windows Installer provides two main methods for upgrading installations: patching and upgrading.
  • Page 278: Determine The Form Of The Update

    Upgrading Applications Planning for the next software update should start when you ship the first version of your application. To create an update, you must have access to previous versions of the installation. Always archive the shipping installation in a place that is accessible. Even if you compile and ship the installation as an .EXE, archive the .MSI, which is created alongside the .EXE.
  • Page 279: Determine The Product Code And Product Version

    Upgrading Applications If the product code is changed, then the updated application can be installed alongside the original application, or can inadvertently be installed over the original application. Are not recommended for updating an application. Should only be used to update if one of the following is true: The update is so small that only the contents of a few files changed.
  • Page 280: Upgradesync

    Upgrading Applications UpgradeSync Using UpgradeSync is one of the steps in preparing software for updates. Preparing for Software Updates on page 277. UpgradeSync compares the current package with the previous version of the package, and does the following to prepare the current package for a patch or upgrade: Changes the PackageCode, ProductCode, and ProductVersion properties if necessary.
  • Page 281 Upgrading Applications Complete the page: Small Update Select this to ship this installation as a patch or reinstall. Small updates generally contain minimal changes to the contents of files. This option changes the package code. Minor Upgrade Select this to ship this installation as a patch or reinstall. Minor upgrades generally contain changes such as new or removed features, files, or other items.
  • Page 282: Patch Creation

    Upgrading Applications See also: Preparing for Software Updates on page 277 Patch Creation Use Patch Creation to create a Windows Installer patch file (.MSP) that updates installed versions of a Windows Installer-based application. A patch file can update one or several previous versions.
  • Page 283: About Patch Sequencing

    Upgrading Applications See also: About Patch Sequencing on page 283 Creating a Patch File on page 284 For additional topics, see About Upgrading Applications on page 277. About Patch Sequencing Windows Installer 3.0 or later. Patch sequencing ensures that patches are applied in the correct order, regardless of the order in which they are actually provided to the destination computer.
  • Page 284: Creating A Patch File

    Upgrading Applications Family 200: B, D See also: Specifying the Patch Sequence on page 290 Patch Creation on page 282 Sequencing Patches and MsiPatchSequence Table in the Windows Installer SDK Help Creating a Patch File Before you create a patch file, review the guidelines for patch creation. Patch Creation on page 282.
  • Page 285 Upgrading Applications Note The Microsoft Windows Installer engine is called to perform the administrative installation. If the operation fails for any reason, the error message generated by Windows Installer displays. To work around the error open the .MSI, set it to generate uncompressed files, and recompile.
  • Page 286 Upgrading Applications Patch Removal (Windows Installer 3.0 or later only.) To make this patch removable through Add/Remove Programs, click Allow Removal and complete the Patch Removal Settings page. Specifying Patch Removal Settings on page 292. Note Multi-patch Media Settings: During patch creation, entries are made in the Media table of the patch installation.
  • Page 287: Specifying Previous Versions For Patches

    Upgrading Applications Specifying Previous Versions for Patches To specify a previous version for a patch Access the Previous Version Details page. Creating a Patch File on page 284. This page is not related to the System Search page in Installation Expert, which lets you search for files, registry entries, and components, or search .INI files.
  • Page 288: Advanced Upgrade Version Details

    Upgrading Applications Advanced Upgrade Version Details To enter advanced upgrade version details Access the Advanced Upgrade Version Details dialog box. Creating a Patch File on page 284. Complete the dialog box and click OK: Patch GUID Each patch file is assigned a GUID, independent of product codes and upgrade codes.
  • Page 289 Upgrading Applications You can avoid this problem by signing patches that will be run under Windows Vista or later operating system. To do so: Make sure that the original installation was digitally signed. Add a digital signature to the patch, using the same certificate that was used to sign the original installation.
  • Page 290: Specifying The Patch Sequence

    Upgrading Applications TimeStamp URL Specify the URL you use for your timestamping service. Timestamping lets end users distinguish between a certificate that has expired but was valid when it was used to sign the installation, and a certificate that was used to sign an installation while it was expired.
  • Page 291: Specifying Advanced Patch Settings

    Upgrading Applications Sequence Within Family Enter a number to specify the order in which this patch should be applied, relative to other patches in this patch family. The default sequence number is the previous sequence plus 10. Product Code Typically, you should leave this field blank, which causes the patch to be applied to all targets in the family.
  • Page 292: Specifying Patch Removal Settings

    Upgrading Applications Specifying Patch Removal Settings Windows Installer 3.0 or later only. You can make a patch removable through Add/Remove Programs. This lets end users uninstall a patch without having to uninstall the entire application. For information on which patches can be removed, see Uninstallable Patches in the Windows Installer SDK Help.
  • Page 293: Creating An Upgrade

    Upgrading Applications What you need to create an upgrade The previous version or versions, which you are upgrading, must have been installed using Windows Installer. You need access to the .MSI of each version you are upgrading. If you do not have access to the .MSI files, you must have the upgrade code and version information from the .MSI files.
  • Page 294 Upgrading Applications Include maximum version in range Mark this to include the maximum version as a valid upgrade. If you clear this, only versions below the maximum version are upgraded. Languages This determines if an application should be upgraded based on its language. Enter a semicolon-delimited list of languages that should be upgraded by this installation.
  • Page 295: Chapter 12: Working With Source Paths

    Chapter 12 Working With Source Paths This chapter includes the following topics: Using Source Control on page 295 About Path Variables on page 303 Source Paths in an Installation on page 306 About source paths You might find that you need to work with source paths during installation development. Project files (.WSI) reference files you add to the installation by their source path.
  • Page 296: Adding An Installation To Source Control

    Working With Source Paths Note If your installation is already located in your source control system, you can connect to the existing installation. Do a Get of all the installation files to your hard drive, then follow the procedure in Adding an Installation to Source Control on page 296.
  • Page 297 Working With Source Paths Click OK to exit Wise Options. Select Source Control menu > Add. Dialog boxes from your SCCS appear, in which you connect to your SCCS and select the location where this installation should be stored. To get further help on any of If this installation is already located these options, see the help system for your SCCS.
  • Page 298: Adding Files To An Installation In Source Control

    Working With Source Paths Adding Files to an Installation in Source Control Not available in the Visual Studio integrated editor. When you add files to an installation, you must also add them to your source code control system (SCCS), even if you previously added the installation to source control. Example: Suppose you add an installation to source control, along with source files A.dll, B.txt, and C.jpg.
  • Page 299: Checking Files Out From Source Control

    Working With Source Paths If you check a file in, then try to work on it, you are prompted to save it with a new name because the file is locked for changes unless it is checked out first. To check files into source control Select Source Control menu >...
  • Page 300: Getting Latest Version Of Files

    Working With Source Paths Getting Latest Version of Files Not available in the Visual Studio integrated editor. You can use this feature only if you’ve added the current installation to your source code control system (SCCS). To get the latest version of a file Select Source Control menu >...
  • Page 301: Showing History Of The Installation File

    Working With Source Paths Note When you add a installation to source control, the installation file (.WSI or .MSI) is added and is also checked out, so it might appear in this dialog box even if you previously did not check it out. Mark the check boxes of the files for which to undo check out.
  • Page 302: Comparing The Current Installation To The Latest In Source Control

    Working With Source Paths To perform a compare using Visual MSIDiff instead, use the Compare to Latest menu command. It performs a table-by-table, row-by-row comparison of the current installation file to the installation file in your SCCS. Comparing the Current Installation to the Latest in Source Control.
  • Page 303: About Path Variables

    Working With Source Paths About Path Variables Note (Visual Studio integrated editor only.) This feature is independent of the Configuration Manager feature in Visual Studio, which lets you store source files in Release and Debug directories. When you add a file to an installation, its source path is stored. During compile, the source path information is used to find the file and compile it into the .MSI or .EXE.
  • Page 304: Creating A User-Defined Path Variable

    Working With Source Paths To turn path variable substitution on and off Select Installation Expert > Path Variables page. Mark or clear the check box in the Replace column. Turning substitution off does not remove the path variable from paths for files added previously;...
  • Page 305: Creating A Path Variable Based On A Registry Value

    Working With Source Paths Complete the dialog box: Variable Name Enter any name, but do not use special characters or spaces. Because this is not a Windows Installer property, you do not need to follow Windows Installer property naming conventions. This variable is inserted into the paths of files that are pulled from the directory that appears in Current Value.
  • Page 306: Source Paths In An Installation

    Working With Source Paths Replace When Matched Mark this to activate this path variable. If this is cleared, this path variable has no effect on files you add to the installation. Click OK. See also: About Path Variables on page 303 Source Paths in an Installation Note (Visual Studio integrated editor only.) This feature is independent of the Configuration...
  • Page 307: Changing Source Directories

    Working With Source Paths Changing Source Directories on page 307 Converting to Relative Source File Paths on page 308 Converting to UNC-Based Source File Paths on page 308 Changing the Source Directory Dynamically During Compile on page 309 Changing Source Directories When you change source directories, you can specify a new path for a selected directory or for multiple directories.
  • Page 308: Converting To Relative Source File Paths

    Working With Source Paths Converting to Relative Source File Paths You can convert the paths of source files to relative paths. You might do this to keep all your source files in a central version and source control system. (Example: Microsoft Visual SourceSafe.
  • Page 309: Changing The Source Directory Dynamically During Compile

    Working With Source Paths The Convert Source Paths dialog box appears. Click Change All Paths to UNC. This button is only available if at least one of the paths in the installation is from a mapped network drive. The Change Source Directories to column displays the new paths. Only the source paths that are from mapped drives are changed to UNC.
  • Page 310 Working With Source Paths Select the source directory to change dynamically. Click Change Selected Path. The Change Selected Path dialog box appears. Complete the dialog box: Change to Enter the name of the property, surrounded by square brackets. The property name is case-sensitive.
  • Page 311: Chapter 13: Merge Modules And Transforms

    Chapter 13 Merge Modules and Transforms This chapter includes the following topics: About Merge Modules on page 311 Available Tabs and Pages in Merge Modules on page 312 Creating a Merge Module As a New Installation on page 316 Creating a Merge Module Within a Solution on page 318 Creating a Merge Module From Existing Components on page 320...
  • Page 312: Available Tabs And Pages In Merge Modules

    Merge Modules and Transforms Adding a Merge Module to an Installation on page 328. Predefined merge modules that install commonly-used software packages. You can download these from the Wise Web site or from other vendors’ Web sites. Downloading Redistributable Files on page 30.
  • Page 313: Setting Merge Module Details

    Merge Modules and Transforms the contents of the item selected in the left pane. For an expanded view of a selected item, double-click the item in the right pane. See also: Setting Merge Module Details on page 313 Setting Dependencies for a Merge Module on page 314 Setting Exclusions for a Merge Module on page 315...
  • Page 314: Setting Dependencies For A Merge Module

    Merge Modules and Transforms Mixed (.NET and Win32) A merge module that contains both Win32 and .NET elements. When this option is selected, the Generate COM interop registry keys for .NET Assembly check box on the Self-registration tab of the File Details dialog box is marked by default for all .NET assemblies you add to this merge module.
  • Page 315: Setting Exclusions For A Merge Module

    Merge Modules and Transforms Fields are populated with information extracted from the merge module. Complete the dialog box: Module ID To specify a different merge module, click Browse. Language ID To specify a different language for the dependent merge module, change Language ID.
  • Page 316: Creating A Merge Module As A New Installation

    Merge Modules and Transforms If you select multiple merge modules, they’re listed on the Exclusions page. Double- click a module name to open the Exclusion Module Details dialog box for a specific merge module. Fields are filled in with information extracted from the merge module. Complete the dialog box: Module ID To specify a different merge module, click Browse.
  • Page 317 Merge Modules and Transforms The Target Platform section on the New Installation File dialog box appears only if Select platform in New Installation File dialog is selected in Wise Options. How to Specify the Target Platform on page 64. A new merge module opens. In Installation Expert, four page groups appear, showing the pages that apply to merge modules.
  • Page 318: Creating A Merge Module Within A Solution

    Merge Modules and Transforms Dependencies are other merge modules that must be included with this merge module, and exclusions are other merge modules that cannot be included with this merge module. Setting Dependencies for a Merge Module on page 314 and Setting Exclusions for a Merge Module on page 315.
  • Page 319 Merge Modules and Transforms Click OK. If you selected the Windows Application icon, a merge module project is created in the location you specified and is listed in Solution Explorer. Skip the next step. If you selected the Setup Wizard icon, the Wise Setup Wizard appears. Step through the Wise Setup Wizard: On the wizard’s Overview page, review the project settings.
  • Page 320: Creating A Merge Module From Existing Components

    Merge Modules and Transforms See also: Available Tabs and Pages in Merge Modules on page 312 Creating a Merge Module From Existing Components You can create a merge module by moving components from a feature in an existing installation file or merge module into a new merge module. Note All the components you plan to move to the new merge module must be in the same feature.
  • Page 321: Creating A Configurable Merge Module

    Merge Modules and Transforms The components you select are removed from this installation, compiled into the new merge module, and re-inserted in the form of a merge module. The new merge module is also available to other installations. See also: Setting Merge Module Details on page 313 Setting Dependencies for a Merge Module...
  • Page 322: Setting Configuration Item Details

    Merge Modules and Transforms Click OK. The value you defined for the configurable item appears in the Value field, and the item appears in the Configuration Items list box. To add more values for the item, repeat the preceding two steps. If you add multiple values, multiple rows appear in the list box and the values are concatenated to create the entire substitution value.
  • Page 323 Merge Modules and Transforms RTF Text The installation author can enter any text in rich text format to replace the default value. Example: Use this when you allow a different license agreement to be selected. Text Drop-down List The installation author can select from a drop-down list to replace the default value.
  • Page 324: Specifying Drop-Down List Values For Substitution

    Merge Modules and Transforms Non-nullable Mark this if a value is required for this configuration item. Default Value Enter the value that should appear on the Merge Module dialog box when the configurable merge module is added to an installation. This is the value that can be changed.
  • Page 325: Specifying A Key For Substitution

    Merge Modules and Transforms merge module to an installation, the installation author selects from a list that shows the descriptive text. See Bitfield Format Types in the Windows Installer SDK Help. To specify a bitfield for substitution Access the Configuration Item Details dialog box from the Module Substitution dialog box.
  • Page 326: Example: Configuring An Item For A Merge Module

    Merge Modules and Transforms To specify a key for substitution Access the Configuration Item Details dialog box from the Module Substitution dialog box. Creating a Configurable Merge Module on page 321. Complete the Configuration Item Details dialog box. Setting Configuration Item Details on page 322.
  • Page 327 Merge Modules and Transforms Display Name Enter “Short file name.” Description Enter “Choose whether to use a short or a long file name for this file.” Type Select Arbitrary Text. Default Value Enter “RELEAS~1.TXT.” Click OK. On the Module Substitution dialog box, your configuration item appears as short_name in the Configuration Items list box.
  • Page 328: About The Merge Modules Page

    Merge Modules and Transforms See also: Creating a Configurable Merge Module on page 321 About the Merge Modules Page The Merge Modules page lets you add merge modules to an installation, edit settings for merge modules that you already added, and remove merge modules from an installation.
  • Page 329 Merge Modules and Transforms Click Download to add merge modules from the Wise Web site, other vendors’ Web sites. If you download the merge modules to a directory that is specified in Wise Options, they are added to the list of available merge modules. Downloading Redistributable Files on page 30.
  • Page 330: Editing Merge Module Details

    Merge Modules and Transforms Setting Dependencies for a Merge Module on page 314. If a dependency merge module cannot be found, you are prompted to download it. During compile, the merge modules are merged into the installation, so that the resulting .MSI contains both the changes defined in the standard installation as well as the changes defined in the merge modules.
  • Page 331: About Transforms

    Merge Modules and Transforms Formatted Text Value Enter any text in Windows Installer formatted text format. RTF Value Enter any text in rich text format. Windows Installer Identifier Value Enter text in the format of a Windows Installer identifier, which may contain ASCII characters, digits, underscores, or periods, and must begin with either a letter or an underscore.
  • Page 332: Creating A Transform Based On An Existing .Msi

    Merge Modules and Transforms A language transform that lets you change the language on the dialog boxes that appear during installation. Creating a Language Transform on page 250. Note The Languages pages is unavailable for transforms. Edit languages in the base .MSI. See also: TRANSFORMS Property in the Windows Installer SDK Help Setting Transform Details...
  • Page 333: Setting Transform Details

    Merge Modules and Transforms Setting Transform Details on page 333. The transform appears in the location you specified. See also: Applying a Transform to an Installation on page 334 Setting Transform Details The Transform Details dialog box, which appears when you save a transform file, contains options that flag error conditions of a transform.
  • Page 334: Applying A Transform To An Installation

    Merge Modules and Transforms Match Language Mark this if the language of the transform must match the language of the base .MSI. Match Product Mark this if the product code of the transform must match the product code of the base .MSI. Match Upgrade Code Mark this if the upgrade code of the transform must match the upgrade code of the base .MSI.
  • Page 335 Merge Modules and Transforms CmdLine=TRANSFORMS="TransformName.mst" /i where TransformName.mst is the name of the transform. When you double-click the .EXE file, it reads the .INI file of the same name. (Example: Application.EXE reads Application.INI.) When it runs the installation, it applies the command-line option specified in the CmdLine property and the transform is applied.
  • Page 336: Chapter 14: Tools

    Chapter 14 Tools This chapter includes the following topics: About Windows Installer Editor tools on page 336 ApplicationWatch on page 337 Convert SMS Installer or WiseScript Installation on page 338 Import Visual Studio Projects on page 340 Removing Dependencies from the Project Dependency Exclusion List on page 343 Manage Assembly Exclusions on page 344...
  • Page 337: Applicationwatch

    Tools Package Distribution Copy a compiled installation to an FTP server, to a local area network, or to removable media. You can also perform an administrative installation to a shared network directory. Package Distribution on page 272. Package Validation Patch Creation.
  • Page 338: Convert Sms Installer Or Wisescript Installation

    Tools Use as many of the application’s features as possible to ensure that files used by rarely-used features are recorded. Do not use the application to print, because printing accesses Windows operating system and printer-specific files. Close the application, return to the Run Application dialog box, and click Finish. If a file that is part of a merge module is added, the Files in Merge Modules dialog box appears.
  • Page 339: Converting An Sms Installer Or Wisescript Installation

    Tools Converting an SMS Installer or WiseScript Installation When you convert an SMS or WiseScript installation, its contents are added to the Windows Installer installation that is currently open. To convert an SMS Installer or WiseScript installation Before you convert a script, open it and delete all Display Billboard, Display Graphic, and Add Icon script actions.
  • Page 340: Import Visual Studio Projects

    Tools Import Visual Studio Projects Visual Studio projects in the Wise Editor The Import Visual Basic, Visual C#, or Visual J# tools let you import a Visual Basic, C#, or J# project file into an installation file. You specify information about the project, and the tool extracts information, such as source file paths, and integrates it into a new or existing installation.
  • Page 341: Importing An Installation From A Visual Studio Project

    Tools There is no link between a Visual Basic 5 or 6 project or solution and the installation you create for the project or solution. If your solution or project is updated with new files, you must make those changes in the installation manually. This tool is not designed to set up a remote automation or a DCOM™...
  • Page 342 Tools The Project File dialog box appears. In VB Project File, specify the path to the project file and click Next. The Select Visual Basic Directory dialog box appears. Specify the directory on your computer where Visual Basic 5 or 6 is installed. This directory contains the support files that must be included in the installation because they are needed by the Visual Basic program.
  • Page 343: Removing Dependencies From The Project Dependency Exclusion List

    Tools Name Enter a name for the installation. This overwrites the Name field on the Product Details page. If you don’t want to overwrite the current installation name, leave this blank. Installation Directory Enter the default installation directory where files from this import should be placed.
  • Page 344: Manage Assembly Exclusions

    Tools See also: How Assembly Dependencies are Added to an Installation on page 123 About Dependency Scan Exclusions on page 124 Manage Assembly Exclusions A project dependency exclusion list is maintained for every .NET installation project. A dependency is added to the list when you choose not to include the dependency during an assembly scan.
  • Page 345 Tools Running MSI to WSI Conversion involves redefining source paths, either by extracting files and merge modules from the .MSI itself, or by redefining the source paths to point to files and merge modules that already exist on your computer. To convert an .MSI to a .WSI (Visual Studio integrated editor only.) To add the installation project to a specific solution, first open the solution in Visual Studio.
  • Page 346: Specifying Merge Module Source Directories

    Tools Specifying Merge Module Source Directories During MSI to WSI Conversion, merge modules are extracted from the .MSI to the default source directory specified on the Welcome page. The source files are pulled from the source directory when the .WSI is compiled. On the Merge Module Sources page, you can override the default source directory for specific merge modules.
  • Page 347: Specifying File Source Directories

    Tools The Source column on the Merge Module Sources page changes to Local to indicate that a local merge module will be used instead of the merge module in the .MSI. Complete the MSI to WSI Conversion wizard. To replace merge modules with merge modules on your computer by searching On the Merge Module Sources page, select one or more merge modules to replace.
  • Page 348 Tools The Choose Replacement File dialog box appears. Specify a file to replace the selected file. The Source column on the File Sources page changes to Local to indicate that a local file will be used instead of the file in the .MSI.
  • Page 349: Package Validation

    Tools network installations. Unlike a normal installation, an administrative installation has a copy of every file that the installation contains. This option pulls files from the directory structure created by an administrative installation. Files are matched by name. The first found instance is used. The Source column on the File Sources page changes to Local to indicate that local files will be used instead of files from the .MSI.
  • Page 350 Tools By default, the list contains predefined validation modules. Predefined Validation Modules on page 352. Note The tests in Application Specification Logo are a subset of the tests in Internal Consistency, therefore, running both tests at the same time might result in duplicate errors.
  • Page 351: Customizing Validation Modules

    Tools 10. If the Correct button is not enabled when you select an issue, the issue cannot be corrected within Package Validation. Make any necessary changes to the installation package in Windows Installer Editor. Note The Correct button is not enabled when an issue is found by a custom action rule. Depending on how the custom action is written, the problem might be fixed automatically when it’s found, or you might need to fix the problem manually.
  • Page 352: Predefined Validation Modules

    Tools In Validation Files, select a validation module. In Validation Rules, mark the check boxes for rules to include. When you finish, click OK. The customizations remain in effect until you change them. See also: Predefined Validation Modules on page 352 Predefined Validation Modules Package Validation contains predefined validation modules that perform the tests described below.
  • Page 353: Windows Vista/Windows 7 Validation

    Tools Transitive flag set on OS based components Checks that the Transitive bit is set on operating system-dependent components. Transitive components are components that must be swapped out if the end user upgrades the destination computer to a new operating system. Icon placement in Start Menu Checks that shortcut icons are installed correctly in the Start Menu.
  • Page 354: Removing Files With Missing Or Invalid Source Paths

    Windows Vista or later operating system and specify the full path to WiseVistaIce.cub. Example: "C:\Program Files\Symantec\Wise Installation Express\bin\getwrpitems.exe" "C:\Program Files\Symantec\Wise Installation Express\Windows Installer Editor\Validation\wisevistaice.cub" The GetWRPItems.exe utility deletes the contents of both tables and rebuilds them based on the WRP information on your computer.
  • Page 355 Tools If you marked the Compile This Installation check box, or if you ran this tool from within the compile process, the installation is compiled. If you compiled the installation but you did not remove all the files with missing or broken source paths, the Welcome page reappears.
  • Page 356: Chapter 15: Setup Editor

    Chapter 15 Setup Editor This chapter includes the following topics: About Setup Editor on page 356 Product Tab on page 358 Features Tab on page 360 Components Tab on page 366 Tables Tab on page 373 About Setup Editor Setup Editor provides an in-depth view of all changes that you make to an installation. You can make those changes in Setup Editor or Installation Expert.
  • Page 357 Setup Editor Setup Editor window in Windows Installer Editor The upper-right pane displays contents of the item selected in The left pane lists the left pane. items for the selected Double-click tab. Expand folders items to edit to see their contents them.
  • Page 358: Product Tab

    Setup Editor Components Add, edit, and delete individual components of the installation. Each component is one action the installation performs. Example: installing a file, changing the registry, and so on. Components Tab on page 366. Module This tab appears only when you are in a merge module file. Add, edit, and delete the components, files, registry entries, and other installation modifications contained in the merge module.
  • Page 359: Specifying Summary Information

    Setup Editor Specifying Summary Information Use the Summary icon in Setup Editor to set the value of a summary item. End users can see the summary information by right-clicking the compiled .MSI or .EXE in Windows Explorer and selecting Properties. Note In Windows Vista and later, the file Properties dialog box does not contain summary information.
  • Page 360: Features Tab

    Setup Editor Features Tab The Features tab lets you manipulate an installation’s features and all corresponding items. It displays a tree structure that lists all components, merge modules, files, registry entries, and other installation items associated with each feature. Working With Components and Features on page 487.
  • Page 361: Assigning A Component To A Feature

    Setup Editor Folder Creating a Folder in Setup Editor on page 364 Duplicate file entry Creating Duplicate File Entries on page 364 Environment variable Adding an Environment Variable on page 159. File association Advertising Icon on page 363. Adding File Associations on page 160.
  • Page 362: Modules Icon

    Setup Editor To assign a component to a feature In Setup Editor > Features tab, right-click a feature and select New > Component Assignment. The Assign Components to Feature dialog box appears. The dialog box lists all components in the installation, except those already assigned to the currently selected feature.
  • Page 363: Advertising Icon

    Setup Editor Click the Modules icon. The merge modules in the selected feature appear in the upper-right pane. If the Advertising icon does not appear, right-click and select Hide Empty Folders/ Items. See also: About Merge Modules on page 311 Features Tab on page 360 Advertising Icon...
  • Page 364: Creating A Folder In Setup Editor

    Setup Editor Creating a Folder in Setup Editor The Create Folder icon in Setup Editor lets you add a new empty directory under an existing directory. You also can create directories on the Files or Visual Studio Solution pages in Installation Expert, where you can also use wildcards to add files to directories automatically.
  • Page 365: How To Ensure The Installation Of A Duplicate File

    Setup Editor Specify the following: Existing File Specify the path for the file to be duplicated. Dest. Directory Specify the directory on the destination computer in which the duplicate file should be installed. To add a subdirectory to the directory you selected, click New Folder and enter a folder name.
  • Page 366: Components Tab

    Setup Editor Components Tab The Components tab lets you manipulate an installation’s components. It displays a tree structure that lists all files, registry entries, and other installation items contained in each component. It also indicates any component errors. Installation Expert automatically creates the appropriate components for each item you add and organizes them according to a component rule set you select.
  • Page 367: Component Errors

    Setup Editor Environment variable Adding an Environment Variable on page 159. File association Advertising Icon on page 363. Adding File Associations on page 160. File Adding Files to an Installation on page 116. INI file Creating and Editing .INI Files on page 154.
  • Page 368: Adding And Editing A Component

    Setup Editor A shortcut is assigned to the component, but the key path for the shortcut is not a file. Registry keys are created in HKEY_CURRENT_USER, but the key path is not for a registry key in HKEY_CURRENT_USER. See also: Components Tab on page 366 Adding and Editing a Component...
  • Page 369 Setup Editor For some conditions, you might need to add a special merge module that addresses a limitation of Windows Installer. Using Conditions With Features on page 106. When you add a 64-bit component to the installation, the 64-bit component check box below is marked automatically and the condition (VersionNT64) is added to this field.
  • Page 370 Setup Editor Never overwrite if key path exists Mark this to prevent the component from being installed if the item specified as the key path already exists. 64-bit component When this is marked, it designates the component as 64-bit. The target directory and the component must both be either 32-bit or 64-bit.
  • Page 371: Moving Items Between Components

    Setup Editor Extract advertising information from registry file Mark this to take information from the .REG file and places it into the advertising tables instead of the registry tables if possible. Click OK on the Component Details dialog box. If the installation has only one feature, the component is added to that feature. If the installation has more than one feature, the Select Feature(s) to Assign Component to dialog box appears.
  • Page 372: About The Key Path

    Setup Editor About the Key Path To determine whether a specific component is installed, Windows Installer looks for the component’s key path rather than looking for every item in the component. If it finds the item that is specified as the key path, it assumes that all other items that make up the corresponding component, and therefore, the component, are installed.
  • Page 373: Adding Published Components

    Setup Editor See also: Components Tab on page 366 Adding Published Components Published components let applications written specifically for Windows Installer refer to one or more components by a single identifier. Example: Do this to add the same published component to each component in a feature. At run time, the installation only needs to check for one published component to determine if the feature is installed.
  • Page 374 Setup Editor Reasons to edit tables directly To use the few features, such as ReserveCost, that are not available anywhere but on the Tables tab. To add a table to store data that is non-Windows Installer standard. Example: If you create a custom action that stores data, you must create a new table in which to store it.
  • Page 375: Creating A New Table

    Setup Editor of the primary key column with an added underscore character. Example: An external key to the File column of the File table is always named File_. An optional, second heading row shows the field’s data type, string length if applicable, and whether the field can be null.
  • Page 376: Creating A New Row In A Table

    Setup Editor Primary Key Mark this to indicate that this field is a primary key in this table. A table can have more than one primary field. Localizable Mark this to indicate that this field should be translatable. If you distribute this installation in another language, the data in this field will be translated.
  • Page 377: Editing Existing Tables

    Setup Editor Editing Existing Tables On the Tables tab, you can directly edit any data in the Windows Installer database. You also can delete rows from tables and delete tables. Warning Deleting, adding, or editing table data directly is not recommended unless you are an experienced Windows Installer developer with a clear understanding of Windows Installer database technology.
  • Page 378: Finding Validation Errors

    Setup Editor Assigning a Component to a Feature on page 361 Finding Validation Errors On the Tables tab, you can search for tables that contain errors and you can search for individual validation errors. These are quick ways to search for validation errors while you are working on a package.
  • Page 379: Editing Binary Data In The Icon Table

    Setup Editor Editing Binary Data in the Icon Table On the Tables tab, you can edit binary data in the Icon table. Most items in this table are graphics (example: shortcut icons). You can export binary files for editing and then import them back into the installation.
  • Page 380: Chapter 16: Using Conditions And Properties

    Chapter 16 Using Conditions and Properties This chapter includes the following topics: Conditions on page 380 Properties on page 388 Conditions Conditions are like expressions: they evaluate to a true or false value. You associate conditions with different elements of an installation such as features, components, actions, dialog boxes, and dialog box controls to determine whether something happens or not.
  • Page 381 Using Conditions and Properties condition or feature. These changes can include adding files, registry entries, services, and ODBC. Items that you add to a feature are installed on the destination computer only if the feature is installed. Items that you add to a condition are installed only if the feature is installed and the condition is true.
  • Page 382: Condition Guidelines

    Using Conditions and Properties Conditions attached to control events You can attach an event to a control. The event can have an associated condition. You might attach events to Next buttons that specify what event happens if the Next button is clicked. Example: Click the Installation Type dialog in Setup Editor >...
  • Page 383: Examples Of Conditions

    Using Conditions and Properties When adding conditions to the Launch Conditions icon, you can add conditions that check properties or environment variables, but you cannot add conditions that check the installed state of a component or feature. You might need to include the merge module CondFix.msm, that fixes certain Windows Installer limitations related to component conditions.
  • Page 384: Creating Conditions With Condition Builder

    Using Conditions and Properties Add CondFix.msm to an installation if you add a component condition that checks the installed state of a component or feature. The Windows Installer Editor installation places CondFix.msm in the default merge modules directory, or you can download it with the Download Redistributables wizard. This merge module appears on the Select Merge Module dialog box when you add a merge module on the Merge Modules page.
  • Page 385: Checking The Value Of A Property

    Using Conditions and Properties Use the () buttons to enclose parts of the condition, which changes the order of precedence. Use the " button to enclose literal text. Lists Fields Select the kind of item the condition checks. You can check the installed state for features and components, and you can check the value of properties and environment variables.
  • Page 386: Checking The Value Of An Environment Variable

    Using Conditions and Properties Creating Conditions With Condition Builder on page 384. In the Fields list, click the Property folder. The Values list displays a list of properties and directories that are initialized by this installation. More properties appear than in other lists of properties, such as the Properties icon in Setup Editor >...
  • Page 387: Checking If And How A Feature Or Component Is Currently Installed

    Using Conditions and Properties Checking If and How a Feature or Component is Currently Installed A feature or component might be installed to run locally, from the source, or advertised, which are all options you can set when installing a component or feature. Note You cannot add this type of condition to the Launch Conditions icon in Setup Editor >...
  • Page 388: Properties

    Using Conditions and Properties To check if and how a feature or component will be installed by this installation Open the Condition Builder. Creating Conditions With Condition Builder on page 384. In the Fields list, click the Feature or Component folder. In the Values list, click the name of the feature or component.
  • Page 389: How Do You Use Properties

    Using Conditions and Properties Created by you in the You can create properties in the Properties icon in Setup installation database Editor > Product tab. Also, some dialog boxes that contain a property drop-down list also contain a New button with which you can create a new property.
  • Page 390: Creating A New Property

    Using Conditions and Properties In conditions You can use properties inside conditions. You do not need to enclose the property name in brackets. Conditions determine whether something happens or not. As formatted text on dialog boxes To display the value of a property or write the value of a property to a file, you must enclose the property name in square brackets.
  • Page 391 Using Conditions and Properties Note You cannot enter other properties to set the value of a new property because text you enter is interpreted literally. This is not true for some specific Windows Installer properties, such as DiskPrompt and PrimaryFolder. To set a property to the value or values of other properties, use the Set Property custom action.
  • Page 392: Chapter 17: Working With Dialogs

    Chapter 17 Working With Dialogs This chapter includes the following topics: About Dialogs on page 392 Using the Dialogs Page on page 395 Using the Dialogs Tab on page 398 Editing Dialog Details on page 399 Creating a New Dialog on page 401 About Dialog Controls on page 402...
  • Page 393: About The Wizard Dialogs

    Working With Dialogs The Dialogs tab shows all dialog boxes that are part of an .MSI. Any of these dialog boxes can appear in different situations: Install Dialogs The Install Dialogs appear during a normal installation, if no command-line options are used to run an advertisement, administrative, or silent installation.
  • Page 394 Working With Dialogs User Information dialog Lets end users enter their name, company, and product ID, and indicate whether the software should be installed for all users or only for the current user. The Product ID field does not appear to the end user if the ProductID property (select Product tab >...
  • Page 395: Using The Dialogs Page

    Working With Dialogs Using the Dialogs Page Use Installation Expert > Dialogs page to view, activate, and rearrange installation dialog boxes that are part of the Welcome Dialog Wizard. The dialog boxes that you activate determine the level of control the end user has over the installation. The Dialogs page looks different based on the version of the Wise product that the current installation was created in.
  • Page 396: Changing The Theme Of Dialogs

    Working With Dialogs Conditions field, but this is not recommended. Most of the Windows Installer properties referenced in conditions are documented in the Windows Installer SDK Help. Changing the Theme of Dialogs The theme controls the overall look of installation dialog boxes by setting their top or side images and the fonts of the dialog box text.
  • Page 397: Importing Text Into License And Readme Dialogs

    Working With Dialogs To create a new theme based on an existing theme, click a theme in the list, click Copy, and enter the new theme’s name in Name. To add images to a new theme or to change an existing theme’s images, click Browse to the right of Top Image Preview or Side Image Preview and select a new image file.
  • Page 398: Using The Dialogs Tab

    Working With Dialogs This button is available only when you select the License or Readme dialog boxes. The text is imported into the dialog box but any embedded graphics are removed. Note If you encounter error messages or formatting problems when you import the file, open it in Wordpad, save it as .RTF, and re-import it.
  • Page 399: Adding Controls To Dialogs

    Working With Dialogs To turn off all installation dialog boxes Do one of the following: Use a silent installation. See User Interface Levels in the Windows Installer SDK Help. In Setup Editor > Dialogs tab, clear the check box next to Welcome Dialog Wizard.
  • Page 400 Working With Dialogs Installation Expert > Dialogs page: Select the dialog box and click the Details button. The Dialog Details dialog box appears. Warning If you are using the Installation Types page to manage the Installation Types dialog box, do not change any details on the Installation Type dialog box. Doing so causes the Installation Types page not to work properly.
  • Page 401: Creating A New Dialog

    Working With Dialogs Creating a New Dialog The New Dialog Wizard guides you through the process of adding a new dialog box to an installation. To create a new dialog box Start the New Dialog Wizard: Select Setup Editor > Dialogs tab. In the left pane, right-click where the new dialog box should appear, and select New >...
  • Page 402: About Dialog Controls

    Working With Dialogs See: Adding Controls to Dialogs on page 399 Editing Dialog Details on page 399 Organizing and Aligning Controls on Dialogs on page 410 About Dialog Controls Installation dialog boxes contain standard controls, which you can add and edit. Most controls are configured by completing their Properties dialog box.
  • Page 403: Editing Dialog Controls

    Working With Dialogs Line A separator line drawn between groups of controls Listbox. Displays a single column of values without icons The end user can select one value from the list. Listview Displays a single column of values with an icon next to each The end user can select one value from the list.
  • Page 404: Basic Control Settings

    Working With Dialogs Assigning Conditions to a Control on page 408 Setting the Graphic for a Control on page 408 Setting the Items in a Control on page 409 To see the results of these settings, compile and run the installation. Basic Control Settings The Control tab, which appears on the Properties dialog box for dialog controls, determines the appearance and basic behavior of controls.
  • Page 405 Working With Dialogs Control Font You can click Set Font and select a font for the control. The Font Property field, if set, overrides this field. X Position, Y Position The location of the control within the dialog box. The upper-left corner is represented by X,Y values of 0,0.
  • Page 406 Working With Dialogs Format Size Tries to format displayed text as a number representing a count of bytes. The control’s text must be set to a number in units of 512 bytes. KB, MB, or GB is added to the end of the text depending on how large the number is. No Prefix Displays any &...
  • Page 407: Setting An Event On A Control

    Working With Dialogs Elevation Shield Adds the Windows Vista shield icon (User Account Control elevation icon) to a pushbutton control. Setting an Event on a Control The Events tab, which appears on the Properties dialog box for dialog box controls, determines the events that the control can send and receive.
  • Page 408: Assigning Help To A Control

    Working With Dialogs Event Select the event to be subscribed to. See the following in the Windows Installer SDK Help: ControlEvent Overview for general information on control events Control Events for details on each control event Attributes Select an attribute that should be set for the control when the subscribing control receives the ControlEvent.
  • Page 409: Setting The Items In A Control

    Working With Dialogs Editing Dialog Controls on page 403. Graphic Name The drop-down list displays graphics stored in the Binary table. Select a graphic or click Set to import a new graphic. Graphics must be in .BMP format. Information Displays information about the graphic, including the number of colors in its palette, its width and height, and its size.
  • Page 410: Organizing And Aligning Controls On Dialogs

    Working With Dialogs Tables tab. Then create a new property, and enter the new text style’s name, surrounded by curly brackets, as the property value. Control Font You can click Set Font and select a font for the control. The Font Property field, if set, overrides this field.
  • Page 411: Aligning Dialog Controls

    Working With Dialogs Incorrect tab order on a dialog box Graphic and static text controls are not included in the tab order Aligning Dialog Controls You can align controls on a dialog box in relation to each other. To align dialog box controls In Setup Editor >...
  • Page 412: Making Dialog Controls The Same Size

    Working With Dialogs All selected controls are centered on the dialog box. Making Dialog Controls the Same Size You can make multiple controls on a dialog box the same size. To make dialog box controls the same size In Setup Editor > Dialogs tab, select a dialog box in the left pane. In the right pane, select two or more controls.
  • Page 413: About Billboards

    Working With Dialogs Select Layout menu > Set Tab Order. In Visual Studio: View menu > Tab Order. This is unavailable unless you set the focus on the dialog box first. A black box appears for each control. The numbers on the boxes indicate the tab order.
  • Page 414: Adding Billboards To A Dialog

    Working With Dialogs Windows Installer does not support the display of billboards outside installation dialog boxes. Adding Billboards to a Dialog In the following steps, bitmaps, icons, and text controls are referred to as content items. To add billboards to a dialog box Select Setup Editor >...
  • Page 415 Working With Dialogs Name Enter a descriptive name for this control. Feature Select a feature from the list. This control’s content item only appears during installation if this feature is installed. Action Select an action from the list. We strongly recommended that you leave the default, InstallFiles, because usually only this action takes time to complete.
  • Page 416: Obtaining Logon Information From A Dialog

    Working With Dialogs To edit an existing billboard Always select the billboard control name first by right-clicking and selecting Billboards > BillboardControlName, where BillboardControlName is the name of the billboard control. This makes the control active, which means that any editing you do is applied to that billboard.
  • Page 417: About The Sql Connection Dialog

    Working With Dialogs In the Templates list, select Server Application Project and click Open. In Setup Editor > Dialogs tab, select the Logon Information dialog and edit the dialog box text as needed to communicate its purpose to the end user who installs your application.
  • Page 418: Adding The Sql Connection Dialog To An Installation

    Working With Dialogs Note The SQL Connection dialog box only validates the connection string; it cannot verify that the user has permission to execute all SQL statements in a SQL script. SQL Connection dialog box requirements Use the WISE_SQL_CONN_STR property for the connection string in Installation Expert >...
  • Page 419: Editing Additional Sql Connection Dialogs

    Working With Dialogs In Setup Editor > Dialogs tab, select SQL Connection Dialog Box and edit the dialog box text as needed to communicate its purpose to the end user who installs your application. To add the SQL Connection dialog box to any installation Select Installation Expert >...
  • Page 420: Adding The Custom Property Dialog

    Working With Dialogs Example: Edit the Argument of the [WiseSqlParam] event for the Browse and Next buttons as follows: From: WiseSqlServerName|WiseSqlAuth|WiseSqlUser|WiseSq WiseSqlServerName1|WiseSqlAuth1|WiseSqlUser1|Wis lPass|WISE_SQL_CONN_STR eSqlPass1|WISE_SQL_CONN_STR1 Use the new property for the connection string in the SQL script that executes the connection with the additional SQL Server. Setting SQL Connection Strings on page 240.
  • Page 421 Working With Dialogs Existing Properties To add an existing property, select it from this list and click Add. To create a new property, select <New Property> from this list, and define the new property. Creating a New Property on page 390. End User-Configurable Properties This list, which you build with the Add button, contains the properties that will be editable by the end user in the Custom Property dialog box during...
  • Page 422: Chapter 18: Macro Editor

    Chapter 18 Macro Editor This chapter includes the following topics: About the Macro Editor on page 422 About Macro Files on page 422 About the Macro Editor Window on page 425 About the Macro Editor The Macro Editor provides access to Wise Automation, which programmatically controls Windows Installer Editor.
  • Page 423: Creating, Editing, And Running A Macro

    Macro Editor The Macro Editor doesn’t let you save a .WBS file under a different name. To rename a macro file, change the file name in Windows Explorer. See also: Creating, Editing, and Running a Macro on page 423 About the Macro Editor Window on page 425 Creating, Editing, and Running a Macro The Macro Editor is similar to the Microsoft Visual Basic Editor.
  • Page 424: Events That Can Trigger A Macro

    Macro Editor (Visual Studio integrated editor only.) In MSI Script, right-click in the Installation Sequence pane and select Macros. The Macro dialog box appears. From Macro Is Run, select: Manually to edit a manually-run macro. On Windows Installer Editor event to edit a macro that runs on an event. In the list box, select the macro to edit.
  • Page 425: About The Macro Editor Window

    Macro Editor Event What you could do with a macro AddFile Have each .DLL or .EXE file you add marked Read-only or have all .DLL files placed into the System directory. Have a specific set of files added each time you start a new installation.
  • Page 426 Macro Editor Members Is context-sensitive and gives you properties and methods in the context of a clicked object If your pointer is not on an object when you select this item from the right-click menu, then it lists all available properties and methods. Properties and methods for an object are all predefined in Windows Installer Editor.
  • Page 427: Chapter 19: Debugger For Windows Installer

    Chapter 19 Debugger for Windows Installer This chapter includes the following topics: About the Debugger on page 427 Running the Debugger on page 428 About the Debugger The Debugger for Windows Installer is an easy-to-use tool that lets you step through an installation to isolate and resolve problems.
  • Page 428: Running The Debugger

    Debugger for Windows Installer Table List Lists all the tables in the installation in a window named _Tables. To open a table, double-click its row in the Table List. Move from one open table to another by clicking the corresponding tab at the bottom of this window. You can edit temporary table fields only.
  • Page 429: Setting Properties And Applying Transforms In The Debugger

    Debugger for Windows Installer The installation is saved and compiled if you made changes since the last compile. You are prompted to select an .MSI if you defined more than one release. The debugger window opens. Set breakpoints if desired. Setting and Clearing Debugger Breakpoints.
  • Page 430: Evaluating Conditions

    Debugger for Windows Installer then run the installation, it pauses at the breakpoint and waits for another command. You can set multiple breakpoints. To set a breakpoint Click the action at which you want to set a breakpoint, then press F9. You can set breakpoints on sequences and control events only.
  • Page 431: Chapter 20: Using Msi Script

    Chapter 20 Using MSI Script This chapter includes the following topics: About MSI Script on page 431 The MSI Script Window on page 432 Editing Sequences on page 436 Calling WiseScripts with Custom Actions on page 438 Guidelines for Using Custom Actions on page 444 Launching a Custom Action from a Dialog on page 449...
  • Page 432: The Msi Script Window

    Using MSI Script The MSI Script Window To access MSI Script™, click the MSI Script tab at the bottom of the main application window. Installation Mode Restricted Areas Actions Sequences Installation Mode Installation modes represent the different ways an installation can be run. Choose whether to work on a normal installation, an advertisement installation, or an administrative installation.
  • Page 433 Using MSI Script Installer installation you create, but each mode is run only under certain circumstances. Installation modes are not used with merge modules. For information on dialog box groupings, see About Dialogs on page 392. Normal Installation Select this installation mode to edit the sequences that are run during a normal installation.
  • Page 434: Adding A Custom Action Outside A Sequence

    Using MSI Script Add a custom action outside a sequence Adding a Custom Action Outside a Sequence. Add a custom action to multiple sequences Adding a Custom Action to Multiple Sequences on page 434. Quickly review and edit custom actions If your custom actions are scattered, you can quickly review and edit them without scanning through each sequence to find them.
  • Page 435: About Installation Sequences

    Using MSI Script Using the Custom Action Location Tab on page 479. From Sequence, select a sequence. In the list box of actions, select an action and click Add. The action is added to the sequence, below the action you selected. If you are in a merge module, the layout of the Location tab is different.
  • Page 436: Editing Sequences

    Using MSI Script In the Visual Studio integrated editor, you cannot select an installation mode, because the standard Visual Studio Find dialog box is used. Note You cannot replace text using this feature, but you can replace text in Setup Editor > Tables tab.
  • Page 437: About The Standard And Custom Tabs

    Using MSI Script If Statements - Conditions (blue) Use If Statements to indicate that a condition is attached to the actions between the If Statement and its corresponding End statement. Remarks (green) Remark statements document the script. Remarks that explain how the script works are already added to new scripts you create.
  • Page 438: Commenting Out Script Lines

    Using MSI Script You can also copy and paste actions to other locations in the installation sequence. However, each time you copy and paste an action, an entirely new copy of the action is stored in the installation. To avoid this duplication, see Adding a Custom Action to Multiple Sequences on page 434.
  • Page 439: Examples Of Wisescripts You Run From An .Msi

    Using MSI Script For information on these actions, see About WiseScript Actions in the WiseScript Editor Help. See also: Troubleshooting: When WiseScript Custom Actions Fail on Windows Vista or later page 443 Run WiseScript From Destination on page 474 Run WiseScript From Installation on page 475 Run WiseScript From Installed Files on page 476...
  • Page 440: Using A Wisescript To Install A License File

    Using MSI Script 1. Get Windows Installer Property APPLICATION_PATH into TEMP 2. Parse String "%TEMP%" into PATH and FILE 3. Set Windows Installer Property APPLICATION_PATH to %PATH% Using a WiseScript to Install a License File Virtually anyone can open an installation .MSI and see the files and other information it contains.
  • Page 441: Uninstalling Changes Made By A Wisescript

    Using MSI Script The sample WiseScript looks like this (the script lines are numbered for clarity): 1. Get Windows Installer Property SERIALNUM into SERIALNUMBER 2. Get Windows Installer Property INSTALLDIR into MAINDIR 3. Set Variable EDITION to LEFT$(SERIALNUMBER,1) 4. Check free disk space 5.
  • Page 442 Using MSI Script Add a Run WiseScript From Installation custom action and set the following: Custom Action Name: ActionInstallCorePlus WiseScript .EXE File: C:\Plus\CorePlus.EXE Command Line: Leave this blank. On the Properties tab, leave the defaults. Add an End Statement. The above script lines install CorePlus, which in this example is A.dll. In the following script lines, you make provisions for the uninstall.
  • Page 443: Troubleshooting: When Wisescript Custom Actions Fail On Windows Vista Or Later

    Using MSI Script This causes the WiseScript to create a log in the installation directory. Add an Install File(s) script action and set the following: Source Pathname: path to Unwise32.exe Unwise32.exe is in the WiseScript Editor subdirectory of this product’s installation directory.
  • Page 444: Guidelines For Using Custom Actions

    Using MSI Script To update a legacy installation If you created the Windows Installer installation or the WiseScript in a Wise product earlier than Wise Installation Studio or Wise Installation Express 7.0 SP1: Open the installation in Windows Installer Editor. Windows Installer Editor checks for custom actions that run a WiseScript.
  • Page 445: Guidelines For Custom Action Location

    Using MSI Script Guidelines for Custom Action Location General Place the custom action as high in the sequence as possible where it executes properly. If it doesn’t execute properly when you test it, keep moving it lower in the sequence until it works. If the custom action uses information that’s gathered during the User Interface sequence, place it after the actions that gather the information you need.
  • Page 446: Guidelines For Custom Action Conditions

    Using MSI Script Restricted Areas in the Sequence If an action has restrictions on its placement in the sequence, the restricted areas are shaded in the Installation Sequence list when you select the action in the Actions list. Place the action in a non-restricted area. Restrictions are defined by Windows Installer functionality.
  • Page 447: Guidelines For Calling Vbscripts And Jscripts

    Using MSI Script Limitations Nested installations are supported according to the Windows Installer specification. While nested installations may sometimes be necessary, we do not recommend using them because of the restrictions on their use. See a list of restrictions at the end of Nested Installation Actions in the Windows Installer SDK help.
  • Page 448: Guidelines For Calling .Dlls

    Using MSI Script From Embedded Code. They let you store the script inside the custom action and resolve formatted property names and other references. Make sure the destination computer contains the runtime for JScript or VBScript. You can call scripts using custom actions, but you must author the JScript or VBScript. The built-in Macro Editor is not meant to author JScripts and VBScripts that you call from custom actions.
  • Page 449: Launching A Custom Action From A Dialog

    Using MSI Script In the User Interface or Execute Immediate sequences, you can send Windows Installer properties to the .DLL function as parameters. The property’s current value is passed to the function, and, if the function changes that value, the new value is put into the corresponding property.
  • Page 450: Troubleshooting Custom Actions

    Using MSI Script On the Events tab, in the Publish Events group box, click Add and complete the dialog box: Event Select DoAction. Argument Enter the name of the custom action. The name is case-sensitive. When the installation is run, the button you added appears on a dialog box. When the end user clicks the button, the custom action you specified is run.
  • Page 451: Chapter 21: Custom Action Reference

    Chapter 21 Custom Action Reference This chapter includes the following topics: About Custom Actions on page 452 Call Custom DLL From Destination on page 452 Call Custom DLL From Installation on page 453 Call Custom DLL From Installed Files on page 454 Call DLL From Installation on page 456 Call Custom DLL From Installed Files...
  • Page 452: About Custom Actions

    Custom Action Reference Run WiseScript From Destination on page 474 Run WiseScript From Installation on page 475 Run WiseScript From Installed Files on page 476 Set Directory on page 477 Set Feature State on page 478 Set Property on page 478 Terminate Installation on page 479 Using the Custom Action Location Tab...
  • Page 453: Call Custom Dll From Installation

    Custom Action Reference Usage Double-click the custom action and complete the Details tab: DLL File Specify a .DLL file that exists on the destination computer to call during installation. Type the path to the .DLL as it will be on the destination computer, but use a Windows Installer directory property (enclosed in brackets) to specify the beginning of the path.
  • Page 454: Call Custom Dll From Installed Files

    Custom Action Reference to call ABC32.dll, one to call ABCx64.dll, and one to call ABCItanium.dll. Place each custom action inside a condition block that checks for the appropriate platform. Manage the .DLL on the Resources page, which reflects the Binary table. Note Before being passed to Windows Installer, calls you make with Call Custom DLL actions are passed through a .DLL that facilitates the passing of parameters.
  • Page 455: Configuring .Dll Parameter Settings

    Custom Action Reference appropriate platform. Example: Your .WSI contains a 32-bit release, an x64 release, and an Itanium release. You add three Call Custom .DLL actions to the project: one to call ABC32.dll, one to call ABCx64.dll, and one to call ABCItanium.dll. Place each custom action inside a condition block that checks for the appropriate platform.
  • Page 456: Call Dll From Installation

    Custom Action Reference In the Execute Immediate or User Interface sequences only, you can send Windows Installer properties to the .DLL function as parameters. The property’s current value is passed to the function and, if the function changes that value, the property is updated back in the installation.
  • Page 457: Call Dll From Installed Files

    Custom Action Reference You cannot send a variable parameter list to the .DLL. You can send only the handle to the installation, which means the .DLL must be written specifically for Windows Installer. To avoid these restrictions, use a “Call Custom DLL...” action instead. Usage Double-click the custom action and complete the Details tab: Custom Action Name...
  • Page 458: Call Jscript From Embedded Code

    Custom Action Reference Function Name Type the name of the function within the .DLL file to call. See also: Guidelines for Calling .DLLs on page 448 Guidelines for Custom Action Location on page 445 Using the Custom Action Properties Tab on page 482 Using the Custom Action Location Tab on page 479...
  • Page 459: Call Jscript From Installed Files

    Custom Action Reference Tips Manage the file on the Resources page, which reflects the Binary table. Use the script to read and write properties to the installation. The destination computer must contain the script’s runtime. Usage Double-click the custom action and complete the Details tab: Custom Action Name Enter a unique name that begins with a letter or underscore.
  • Page 460: Call Jscript From Property

    Custom Action Reference See Standard Actions Reference in the Windows Installer SDK Help. Script File Specify a script file to call during installation. It must have already been added to this installation on the Files page. Script Function Call (Optional.) Type the name of the function within the script to call. Run Script in Win64 Process (64-bit installations only.) Mark this if the script needs to access 64-bit functionality and run in a 64-bit process.
  • Page 461: Call Vbscript From Embedded Code

    Custom Action Reference Guidelines for Custom Action Location on page 445 Using the Custom Action Properties Tab on page 482 Using the Custom Action Location Tab on page 479 Custom Action Type 53 in the Windows Installer SDK Help Call VBScript From Embedded Code This custom action runs VBScript code that is embedded inside this custom action.
  • Page 462: Call Vbscript From Installed Files

    Custom Action Reference Usage Double-click the custom action and complete the Details tab: Custom Action Name Enter a unique name that begins with a letter or underscore. It can contain numbers and periods. It must not match the name of any Windows Installer standard action. See Standard Actions Reference in the Windows Installer SDK Help.
  • Page 463: Call Vbscript From Property

    Custom Action Reference See also: Guidelines for Calling VBScripts and JScripts on page 447 Guidelines for Custom Action Location on page 445 Using the Custom Action Properties Tab on page 482 Using the Custom Action Location Tab on page 479 Custom Action Type 22 in the Windows Installer SDK Help Call VBScript From Property This custom action runs VBScript code that is stored inside a Windows Installer property.
  • Page 464: Download File From Internet

    Custom Action Reference Tips If this custom action is within a condition, the message is displayed only when the specified condition is met. Example: You could display a message if end users marked a check box on a dialog box. You would associate the check box with a property and then set up a condition to check if the property was true.
  • Page 465: End Statement

    Custom Action Reference Usage Double-click the custom action and complete the dialog box: Source URL Enter the URL of the file to download, including the name of the file. Example: http://www.site.com/readme.pdf. Destination Directory Specify the file path, including file name, on the destination computer where the file should be downloaded.
  • Page 466: Execute Program From Installation

    Custom Action Reference See Standard Actions Reference in the Windows Installer SDK Help. Working Directory Using a non-bracketed Windows Installer directory property (Example: INSTALLDIR), specify the working directory of the .EXE file to call. When the .EXE file is run on the destination computer, its current working directory is set to the directory you specify here.
  • Page 467: Execute Program From Installed Files

    Custom Action Reference Custom Action Type 2 in the Windows Installer SDK Help Execute Program From Installed Files This custom action calls an .EXE file that is installed by this installation. Tips Before you add this custom action, add the file to be called to the Files page in Installation Expert.
  • Page 468: If Statement

    Custom Action Reference Property Specify a property that will store the path and name of the .EXE. Select a property or type a new property name. Command Line (Optional) Enter command-line options to pass to the .EXE file. See also: Guidelines for Custom Action Location on page 445 Using the Custom Action Properties Tab...
  • Page 469: Install Msi From Installation

    Custom Action Reference For best results, place this custom action in the Execute Immediate sequence after the InstallFinalize action. Usage Double-click the custom action and complete the Details tab: Custom Action Name Enter a unique name that begins with a letter or underscore. It can contain numbers and periods.
  • Page 470: Install Msi From Relative Path

    Custom Action Reference On the Properties tab, In-Script Options is unavailable for this custom action and Processing only allows synchronous execution. For best results, place this custom action in the Execute Immediate sequence after the InstallFinalize action. Usage Double-click the custom action and complete the Details tab: Custom Action Name Enter a unique name that begins with a letter or underscore.
  • Page 471: Launch Web Page

    Custom Action Reference Tips This custom action is not available in an Administrative Installation. The installation being called must be a Windows Installer installation. On the Properties tab, In-Script Options is unavailable for this custom action and Processing only allows synchronous execution. For best results, place this custom action in the Execute Immediate sequence after the InstallFinalize action.
  • Page 472: Open Document From Installed Files

    Custom Action Reference In Web Page URL on the Launch Web Page dialog box, designate the URL to open during installation. The URL must be complete. Example: http://www.symantec.com. See also: Download File From Internet on page 464 Post Data to HTTP Server...
  • Page 473 Custom Action Reference Tips You must have an ASP or CGI program set up to accept data from HTTP POST operations. The computer running the installation must have a valid Internet connection (such as dial-up networking). If you place this action in the User Interface or Execute Immediate sequences, you can use formatted text strings, such as [PROPERTY], in the Destination URL and Text to Post fields.
  • Page 474: Remark

    Custom Action Reference Launch Web Page on page 471 Guidelines for Custom Action Conditions on page 446 Remark The Remark action lets you put comments in sequences to document what is happening in the script. In Remark, type the comment. To place a blank line in the sequence, add a Remark action, but leave Remark blank.
  • Page 475: Run Wisescript From Installation

    Custom Action Reference Guidelines for Custom Action Location on page 445 Using the Custom Action Properties Tab on page 482 Using the Custom Action Location Tab on page 479 Troubleshooting: When WiseScript Custom Actions Fail on Windows Vista or later page 443 Run WiseScript From Installation This custom action stores a WiseScript .EXE in the Binary table of this installation file...
  • Page 476: Run Wisescript From Installed Files

    Custom Action Reference See also: Examples of WiseScripts You Run From an .MSI on page 439 Calling WiseScripts with Custom Actions on page 438 Guidelines for Custom Action Location on page 445 Using the Custom Action Properties Tab on page 482 Using the Custom Action Location Tab on page 479 Troubleshooting: When WiseScript Custom Actions Fail on Windows Vista or later...
  • Page 477: Set Directory

    Custom Action Reference unavailable if the WiseScript .EXE File field is empty or if a corresponding .WSE file does not exist for the specified .EXE file. Command Line (Optional) Enter the command-line options to send to the .EXE. Example: Enter /s to make the WiseScript run silently.
  • Page 478: Set Feature State

    Custom Action Reference Using the Custom Action Location Tab on page 479 Custom Action Type 35 in the Windows Installer SDK Help Set Feature State This custom action sets the installation state of a feature at run time. The installation state determines how or whether a feature is installed.
  • Page 479: Terminate Installation

    Custom Action Reference brackets. For information on formatted text strings, see Formatted in the Windows Installer SDK Help. See also: Guidelines for Custom Action Location on page 445 Using the Custom Action Properties Tab on page 482 Using the Custom Action Location Tab on page 479 Custom Action Type 51 in the Windows Installer SDK Help Terminate Installation...
  • Page 480: Using The Custom Action Location Tab For Merge Modules

    Custom Action Reference Note The Location tab is an alternate way to perform tasks that you normally perform in the User Interface, Execute Immediate, or Execute Deferred sequences. You can move and copy custom actions by using editing functions in these sequences. The main use for this tab is to click the No Sequence option, which causes this action to not run unless an event invokes it.
  • Page 481 Custom Action Reference Note When you add a custom action to a merge module, you’ll notice that the Custom Action Name field automatically contains the GUID of the merge module. You should leave the GUID as part of the custom action name to ensure adherence to Windows Installer guidelines for naming custom actions in merge modules.
  • Page 482: Using The Custom Action Properties Tab

    Custom Action Reference Using the Custom Action Properties Tab The Properties tab appears on the details dialog box for most custom actions. However, sometimes options are unavailable or display different choices based on what kind of custom action you added and where you added it. In this dialog box, you set options that determine when and how the custom action is run.
  • Page 483 Custom Action Reference run asynchronously. See Rollback Custom Actions in the Windows Installer SDK Help. Commit only Select this if the action should be executed later, during installation of the commit script, which is invoked upon successful completion of the installation script. Commit actions run in deferred execution mode.
  • Page 484: Using The Custom Action Description Tab

    Custom Action Reference does not check the exit code. This option is not supported for Install MSI custom actions. This option is not supported for Install MSI custom actions or if you selected Rollback Only in the In-Script Options list above. Scheduling Options If you add the custom action to both the UI Sequence and the Execute Sequence, but you want to limit the number of times it actually runs, select an option here.
  • Page 485: Chapter 22: Windows Installer And .Net Technologies

    Chapter 22 Windows Installer and .NET Technologies This chapter includes the following topics: About Microsoft Windows Installer on page 485 About Microsoft .NET Technology on page 488 About Microsoft Windows Installer Wise products integrate closely with Microsoft Windows technologies. The installations you create are in Microsoft Windows Installer format and are run on the destination computer by the Windows Installer engine.
  • Page 486: Frequently Asked Questions About Microsoft Windows Installer

    Windows Installer and .NET Technologies Frequently Asked Questions About Microsoft Windows Installer How is Windows Installer different from Windows Installer Editor? Microsoft Windows Installer is a Microsoft technology for writing, managing, and installing applications. The Microsoft Windows Installer service, which resides permanently on the destination computer as part of the operating system, includes a Windows Installer executable named msiexec.exe.
  • Page 487: Working With Components And Features

    Windows Installer and .NET Technologies How does Windows Installer Editor support advertisement? In Windows Installer Editor, you can set default advertisement on a per-feature basis on the Feature Details dialog box. If you advertise features, however, you must include Windows Installer function calls within the application to perform a feature-level installation of the necessary files when an advertised entry point is invoked.
  • Page 488: About Guids

    Windows Installer and .NET Technologies For information on how Windows Installer handles components and features, see the following topics in the Windows Installer SDK Help: Windows Installer Components Component Management Components and Features Organizing Applications into Components See also: About Microsoft Windows Installer on page 485 About GUIDs GUID stands for globally unique identifier.
  • Page 489: Frequently Asked Questions About Microsoft .Net

    Windows Installer and .NET Technologies Windows Installer Editor simplifies the process of creating installations for .NET applications, automating the process by extracting most of the installation details from your assemblies. Windows Installer 2.0 or later only The ability to create .NET installations is supported only by Windows Installer 2.0 or later.
  • Page 490 Windows Installer and .NET Technologies called as though they were COM components. At run time, the common language runtime marshals data between COM objects and managed objects as needed. Search for “Interoperating with Unmanaged Code” in the MSDN Library (msdn.microsoft.com/library/). What is an assembly? An assembly is the primary building block of a .NET application.
  • Page 491 Windows Installer and .NET Technologies private directory for the exclusive use of the application. A version of the assembly is also globally registered on the system and made available for any application that binds to it. The global version of the assembly can be the version installed with the application or an earlier version.
  • Page 492: Requirements For Creating A .Net Installation

    Windows Installer and .NET Technologies Requirements for Creating a .NET Installation The ability to create .NET installations is supported only by Windows Installer 2.0 or later. When you create a .NET installation, you should have the .NET Framework installed on your computer. If the .NET Framework is installed on your organization’s development computers, but not on the computer used to build installations, it is possible to create a .NET installation.
  • Page 493: Appendix A Wise Custom Actions

    Appendix A Wise Custom Actions Windows Installer Editor uses custom actions to add functionality that is not available with the Windows Installer standard actions. When you use certain features, such as custom actions that call a .DLL, Wise custom actions are added to the installation. Warning Removing Wise custom actions might cause problems with the installation.
  • Page 494 Wise Custom Actions Custom action Description DiagnosticAppSearch Enumerates the entries in the AppSearch table and evaluates the expressions using the MSIEvaluate Property function. It then retrieves the value of the property and reports the results. DiagnosticCheckDiskSpace Evaluates the disk costing and identifies computers that don’t meet the requirements.
  • Page 495 Wise Custom Actions Custom action Description DiagnosticFileAssociationConflict Processes the Extension table and checks the registry for support for each extension. This test opens the registry key for the extension. If the key exists, then the extension is already registered. The existing value of the key is compared with the ProgId to be registered;...
  • Page 496 Wise Custom Actions Custom action Description SetPatchMode Sets the REINSTALL property to the list of features in the previous version of the user’s application and sets the ADDLOCAL property to the list of features, if any, that were added to the installation in the new version of the application.
  • Page 497 Wise Custom Actions Custom action Description WiseGetIISFeaturesEnabled Sets properties (CGIENABLED, ISPAIENABLED, ASPENABLED, ASPDOTNETENABLED, SSIENABLED, IDCENABLED, FPEXTENABLED, and WebDAVENABLED) to show which features are enabled in IIS. This is useful for setting launch conditions to ensure that the destination computer has the required environment for the installation.
  • Page 498 Wise Custom Actions Custom action Description WiseUpgradeCheck When you add upgrade information to the Upgrades page, this action is added to work around issues where the Windows Installer runtime does not detect previous versions of the application. WiseUpgradeCheckEx When you add upgrade information to the Upgrades page, this action is added to work around issues where the Windows Installer runtime does not detect previous versions of the application.
  • Page 499: Appendix B Wise Tables

    Appendix B Wise Tables Wise tables contain information that is related to items you added in Windows Installer Editor. Most of these tables do not appear in the compiled .MSI, unless noted otherwise or unless you use an .MSI file as the project file. Some of the tables listed below are available in certain Wise products only.
  • Page 500 Wise Tables Wise table Remains in Description .MSI? WiseFirewallSetup Stores options that are configured on the Firewall Exceptions page WiseInstanceTransforms Contains information about instance transforms that are defined in Installation Expert > Instance Transforms page. WiseLangString Contains all strings for all languages currently defined in the installation.
  • Page 501 Wise Tables Wise table Remains in Description .MSI? WisePocketPCRegistry Contains information about each Pocket PC registry key and all of its attributes WisePocketPCShortcut Contains information about each Pocket PC shortcut and all of its attributes WisePrerequisites Contains information on prerequisites that are added to the installation on the Prerequisites page WiseRelease Contains a list of all releases in the installation...
  • Page 502 Wise Tables Wise table Remains in Description .MSI? WiseVSDropFile (Visual Studio integrated editor only) Appears in an installation that is part of a Visual Studio solution Contains a list of files that result from projects that have been excluded from the current build configuration and therefore should not be included in the compiled .MSI WiseVSOutput (Visual Studio integrated editor only) Contains a list of...
  • Page 503: Appendix C Property Reference

    Appendix C Property Reference Properties are variables that are used by Windows Installer during installation. This section lists Windows Installer properties. This chapter includes the following topics: Build Properties on page 503 INI File Properties on page 507 Run Time Properties on page 510 See also: Properties...
  • Page 504 Property Reference Property name Description _WiseDialogTitleFontDefault Contains the text style used for the titles on wizard pages. This is not for the text in the title bar itself, but for the text inside the wizard that introduces the page content. The font choices for this property are listed in the TextStyle table located on the Tables tab.
  • Page 505 Property Reference Property name Description MaintenanceMode Sets the initial value of the radio button on the Maintenance Welcome dialog. The default value, “Modify”, causes the Modify radio button to be marked by default. The Next button on the Maintenance Welcome dialog has events attached to it, which cause different pages to appear based on the radio button that is marked.
  • Page 506 Property Reference Property name Description WiseInitAdminError Contains the text of the error message that appears if the Windows Installer runtime needs to be installed but the current user does not have administrator privileges, which are necessary to install it. If an installation creates an .EXE that launches an .MSI, this property sets the default value for the AdminError property in the .INI file that’s generated.
  • Page 507: Ini File Properties

    Property Reference Property name Description WiseInitProgressText Enter the text that should display while the hourglass is being displayed during installation. WiseInitSpaceError Contains the error text that is displayed if the destination computer does not have enough free disk space to copy the .MSI database to its local disk drive. If an installation creates an .EXE that launches an .MSI, this property sets the default value for the SpaceError property in the .INI file that’s generated.
  • Page 508 Property Reference Property name Description CharFont Contains the font that is used in the installation’s initialization window. The initialization window is the small window that appears before the installation wizard dialog boxes appear. This also affects any other initial dialog boxes that appear, such as the language selection and password dialog boxes.
  • Page 509 Property Reference Property name Description ProductName Text that displays in the title bar of the installation’s initialization window. The initialization window is the small window that appears before the installation wizard dialog boxes appear. This defaults to the value in the build property WiseInitProductName.
  • Page 510: Run Time Properties

    Property Reference See also: Build Properties on page 503 Run Time Properties on page 510 Properties on page 388 Run Time Properties The properties listed in Build Properties on page 503 represent properties that are initialized by the installation. All build properties are also run time properties. Windows Installer sets additional properties at run time that contain useful information you can use in an installation.
  • Page 511 Index Symbols standard 436 attributes 134, 237 stored in Binary table 379 defined 490 .NET types 436 dependency exclusions 124 about 489 using conditions 381 patching 282 assembly options 36 Windows Installer 436 private 122, 490 file attributes 134 scanning 123 Actions list 432 installation, creating 236, 237 scanning options 37...
  • Page 512 bitfield, for substitution 324 tips 447 create log file 232 example 233, 310 bitmap Cancel button, hiding in list of 231 adding to dialog box 408 installation 226 dialog box control 402 command-line, creating 223 CAPICOM 234, 289 setting on dialog box 406 comment out line 438 CER file 233, 289 blank line, inserting 474...
  • Page 513 editing 56 data types 322 Custom Actions directory 29 how applied 52 defining 322 custom installation 104, 186 in upgrade 54 key into a table 325 custom installation template Microsoft Best Practices 57 text drop-down 324 See template modifying 56 ConfigureWebUI 493 Custom Property dialog box 420 One File Per Component 59...
  • Page 514 adding without .NET condition, adding 381, 408 DIFx 76 Framework 237 controlling display of 407 DIFxAPP defined 314 creating 401 merge module 76 exclusions, about 124 displaying image 413 options 138 exclusions, removing 343 editing 398 digital signature files not found 342 fonts 405, 410 adding to installation 233 global exclusions 124...
  • Page 515 Driver Install Frameworks 76 with .MSI 62 .NET settings 134 adding to installation 116 driver package EXE wrapper 184 adding to source control 298 adding to Add/Remove Execute Deferred 432, 435 adding with wildcard 119 Programs 138 Execute Immediate 432, 435 assembly settings 134 installing 76 execute installation...
  • Page 516 about 217 Installation Expert 21 adding to source control 46, 296, adding 218 using 32 Windows Installer SDK 32 before you start 60 file, Palm OS building 87 about 220 hidden file 131 calling multiple 446, 468, 469, adding 221 Hide Empty Folders/Items 360, 366 FILEPATH1 203 history, showing for project 301...
  • Page 517 Installation Type dialog box 186, 394 strings, See text strings editing 423 transform, creating 250 event 424 Installation Types page 186 running 424 language ID INSTALLDIR 504 list 270 Macro Editor Installed property 383, 446 setting 255, 258 functions, viewing 426 INSTALLLEVEL 104, 504 members 426 Language menu, using 264...
  • Page 518 downloading from Web or CD 30 process for adding 217 nested installation exclusion, adding 315 on destination computer 468 Mobile Devices page exporting components 320 relative to base 470 about 216 extracting from .MSI 345, 346 substorage 469 adding Palm OS files 221 from Software Manager tips for running 446 adding Windows Mobile files 218...
  • Page 519 in patch 282 assembly in GAC 282 PFX file 234, 289 compile settings 285 Package Contents by Feature PIDTemplate 505 creating 284 report 29 platform (32-bit or 64-bit) defining upgrade versions 288 Package Contents Summary report 29 See target platform description 278 Package Definition File (PDF) 235 Pocket PC...
  • Page 520 connecting to existing 296 about 189 creating 72, 75 compile in Visual Studio 192 QueryDisplayValidation event merge module 61 compiling 190, 192 macro 425 multiple platforms 68 components, selecting 196 QueryFixValidation event macro 425 patch 62 creating 190 quick compile 36, 87 Visual Studio 61 customizing 194 Windows Installer 61...
  • Page 521 rule set, component Select Feature dialog box 394 shortcut, mobile device 219 copying 56 selection tree control 403 Shortcuts page 156 creating 55 self-registration 132 side-by-side sharing 122, 490 deleting 56 adding automatically 39 signcode.exe 233, 289 modifying 56 how captured 139 signtool.exe 234, 289 renaming 56 setting for files 133...
  • Page 522 SQL Connection dialog box setting in Installation Expert 170 Task List about 394 setting with launch condition 174 about 26 adding 418 adding tasks 26 System Requirements page 170 adding multiples 419 component error 26 system requirements, Wise product guidelines 418 filtering 27 Refer to Getting Started Guide modifying 419...
  • Page 523 Text Translated 248 avoiding 279 terminal server compatibility 353 leaving components installed 126 test descriptions 352 theme, dialog box Palm OS application 221 adding 396 Validation directory 29 patch 292 backward compatibility 396 validation module running action during 446 changing 396 about 351 setting options 96 changing per release 191...
  • Page 524 about 140 Windows Mobile WiseFileAttributes 499 adding files 143 about 217 WiseFileHash table 499 adding output group 143 Windows Mobile installation WiseFindSqlClientTools 496 Also see Files page about 217 WiseFirewallInfo 496 controlling dependencies 143 Also see mobile device installation WiseFirewallSetup table 500 icons 144 CAB file 217 WiseFixConditions merge module...
  • Page 525 WiseReleaseOverride table 501 WOW64 66 WiseRemoveFirewall 497 WOW6432Node 67 WiseRuntimeVar table 501 wrapper, EXE 184 WiseScript WSI file calling 438 creating 72, 75 calling from destination 474 defined 61 calling from installation 475 multiple platforms 68 calling from installed file 476 working with 63 editing from Prerequisites WSM file...

This manual is also suitable for:

Windows installer editor 7.0 sp2

Table of Contents