Modifying the Registry

Some applications require changes to the Windows registry for proper operation. If these changes concern the registration of fonts, ActiveX controls, COM servers, or device drivers and services, you should probably use the built-in support for these kinds of files. The following topics describe the procedures involved:

Likewise, for smaller changes such as registration of App Paths for your application, consult the File attributes topic. However, if your needs are not met by one of these categories and you need to install registry keys and values, InstallMate offers full registry editing capabilities.

Warning - Editing the registry is an advanced topic that requires a good understanding of Windows internals and may potentially render the customer's computer inoperative. You should not attempt to specify registry modifications unless you understand what you are doing.

InstallMate will not install empty registry keys, i.e., keys without any registry values or without subkeys that in turn contain one or more registry values. Therefore, even though the registry tree on the Registry project page is already populated when you create a new project, none of the keys in it will be installed until you add at least one value somewhere, and then only the keys along the path to that value will be created during installation.

Conversely, during uninstallation InstallMate automatically removes registry keys that have become empty because all their values and subkeys have been removed. This feature is useful to clean up registry keys that are created by your application after installation, for example those used to store user preferences.

How to specify registry modifications

To specify registry modifications during installation and removal, act as follows.

  1. Go to the the Registry project page.
  2. Decide where to add registry keys and values. When you create a new project, InstallMate creates a number of commonly used registry keys for you in the registry tree; use these as your starting point.
  3. To add a new key as a subkey of an existing one, right-click on the existing key to open its context menu, then choose one of:

    • New Key - To insert an Unnamed subkey;
    • New Special Key - To open a submenu with commonly used subkey names.

    After adding the key, you can change its name in the Registry Key attributes pane.

  4. To add a new value to an existing key, right-click on the key to open its context menu, then select New Value. InstallMate creates a new registry value for you. Select this value to display its Registry Value attributes pane, then set the following options:

    • Name - Enter the desired name, or leave blank for the (Default) value. Note that typing (Default) does something else: it creates a named value that superficially appears to be the nameless (Default) value, but in reality is a separate one.
    • Data - Enter the corresponding data. See Registry Value attributes for a discussion of data editing.
    • Type - Select the desired type. See Registry Value attributes for a discussion of the available value types.
    • Install action - Choose the appropriate action. Normally, you should choose Install if not present or Overwrite existing value, but you can pick Do not install if all you want to do is clean up registry settings that your application creates after installation, for example those used to store user preferences.
    • Remove action - Choose the appropriate action. The safest option is Remove partial value; this will actually clean up the entire value if it becomes empty.

Tip - If you accidentally add subkeys or values to the wrong registry key, you can use drag & drop to move them to a different one.