InstallShield und AdminStudio Schulungen Original-Kurse mit Zertifikat Hier klicken

InstallSite MSI FAQ Home Introduction Preparing Creating How To Runtime Issues Error Reference Deutsch MSI FAQ in Deutsch

Windows Installer launches unexpectedly, for no obvious reason

Windows Installer launches, trying to install your application, or some seemingly unrelated application. Symptoms include a small Windows Installer dialog with progress bar, or a request for the installation CD.

What you see is the auto-repair feature of Windows Installer. When an application is launched, Windows Installer performs a health check in order to restore files or registry entries that may have been deleted. Such a health check is not only triggered by clicking a shortcut but also by other events, such as activation of a COM server. The events triggering a health check depend on the operating system.

When you see this auto-repair problem this means that Windows Installer came to the conclusion that some application is broken and needs to be repaired. There are cases where this is intended bahaviour - see article How do I add HKEY_CURRENT_USER registry entries to all profiles? But in most cases it means that the MSI file was not authored properly.

The first step to diagnose the problem is looking at the Application Event Log in Windows. Depending on your operating system you can access the event log viewer following these steps:

Windows XP: Start > Control Panel > Performance and Maintenance > Administrative Tools > Event Viewer
Windows 2000: Start > Settings > Control Panel > Administrative Tools > Event Viewer
Windows NT4: Start > Programs > Administrative Tools (Common) > Event Viewer

In the "Applications" section you should find warnings from event source "MsiInstaller" with IDs 1001 and 1004. The message details would look like this:

Event ID: 1001
Description: Detection of product "{4ED0C75A-8BC5-4520-B9C7-76968FD5677F}", feature "Test" failed during request for component "{A7B09747-E527-4E1B-AE51-323CD636210F}"

Event ID: 1004
Description: Detection of product "{4ED0C75A-8BC5-4520-B9C7-76968FD5677F}", feature "Test", component "{A7B09747-E527-4E1B-AE51-323CD636210F}" failed. The resource "C:\Progam Files\InstallSite\test.exe" does not exist.

The first message (with event ID 1001) states which component was being installed. The component listed here is the component named in the Component_ column of the Shortcut table for the particular shortcut.

The second message (with event ID 1004) indicates which component failed detection. Improved event logging in Windows Installer 2.0 has updated the message so that in most cases, the message identifies the actual resource that resulted in the failed detection. The component with the missing or damaged keypath is the component that is triggering the reinstallation.

In the example above, the reinstallation is triggered because the resource "C:\Program Files\InstallSite\test.exe" does not exist. You would then need to find out why the keypath (health check always checks the key path of a component) does not exist - in this case, the user deleted it.

The next step in diagnosing the problem is mapping back those GUIDs to actual products that are installed on your machine.

Here is a VBScript that will produce a text file of each installer component and the product that's using it, GUIDs and all. It should get you to the file(s) causing the problem.

Usage: Just run the script (it should run on any system with VBScript support). It won't show you anything while it runs, there's no progress indicator. Just wait for the "Done" message box. You will then find a text file named comps.txt in the same directory as the VBS file.

ZIP   Written by Phil Wilson
File size: 677 bytes   Last update: 2004-08-13


English News Discussions Windows Installer Related Tools More Help InstallScript About InstallSite Shop Site Search
deutsch Neuigkeiten Diskussionsgruppen Windows Installer MSI FAQ Artikel     Shop Suche

Copyright © by InstallSite Stefan Krueger. All rights reserved. Legal information.
Impressum/Imprint Datenschutzerklärung/Privacy Policy
By using this site you agree to the license agreement. Webmaster contact.