Search code examples
windows-installervisual-studio-setup-proje

MSI Installer not running on XP


I have created a Windows Installer Project for the deployment of a WPF executable application (using the Visual Studio Installer Projects extension). The install package (MSI) works perfect on my development PC (Windows 8.1).

When running this on a Windows XP SP3 machine, I get the following:

The installer was interrupted before it could be installed.

msiexec logs the following:

=== Verbose logging started: 2015/01/20  10:57:31  Build type: SHIP UNICODE 4.05.6001.00  Calling process: C:\Windows\system32\msiexec.exe ===
MSI (c) (74:80) [10:57:31:984]: Resetting cached policy values
MSI (c) (74:80) [10:57:31:984]: Machine policy value 'Debug' is 0
MSI (c) (74:80) [10:57:31:984]: ******* RunEngine:
           ******* Product: MyProject.msi
           ******* Action: 
           ******* CommandLine: **********
MSI (c) (74:80) [10:57:31:984]: Machine policy value 'DisableUserInstalls' is 0
MSI (c) (74:80) [10:57:32:000]: SOFTWARE RESTRICTION POLICY: Verifying package --> 'C:\AC\MyProject.msi' against software restriction policy
MSI (c) (74:80) [10:57:32:000]: Note: 1: 2262 2: DigitalSignature 3: -2147287038 
MSI (c) (74:80) [10:57:32:000]: SOFTWARE RESTRICTION POLICY: C:\AC\MyProject.msi is not digitally signed
MSI (c) (74:80) [10:57:32:000]: SOFTWARE RESTRICTION POLICY: C:\AC\MyProject.msi is permitted to run at the 'unrestricted' authorization level.
MSI (c) (74:80) [10:57:32:015]: Cloaking enabled.
MSI (c) (74:80) [10:57:32:015]: Attempting to enable all disabled privileges before calling Install on Server
MSI (c) (74:80) [10:57:32:031]: End dialog not enabled
MSI (c) (74:80) [10:57:32:031]: Original package ==> C:\AC\MyProject.msi
MSI (c) (74:80) [10:57:32:031]: Package we're running from ==> C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\4136ffe.msi
MSI (c) (74:80) [10:57:32:031]: APPCOMPAT: looking for appcompat database entry with ProductCode '{BA7A0342-73FF-44AB-9A15-A809E178C99D}'.
MSI (c) (74:80) [10:57:32:031]: APPCOMPAT: no matching ProductCode found in database.
MSI (c) (74:80) [10:57:32:031]: MSCOREE not loaded loading copy from system32
MSI (c) (74:80) [10:57:32:031]: Machine policy value 'TransformsSecure' is 0
MSI (c) (74:80) [10:57:32:031]: User policy value 'TransformsAtSource' is 0
MSI (c) (74:80) [10:57:32:031]: Note: 1: 2262 2: MsiFileHash 3: -2147287038 
MSI (c) (74:80) [10:57:32:031]: Machine policy value 'DisablePatch' is 0
MSI (c) (74:80) [10:57:32:031]: Machine policy value 'AllowLockdownPatch' is 0
MSI (c) (74:80) [10:57:32:031]: Machine policy value 'DisableLUAPatching' is 0
MSI (c) (74:80) [10:57:32:031]: Machine policy value 'DisableFlyWeightPatching' is 0
MSI (c) (74:80) [10:57:32:031]: APPCOMPAT: looking for appcompat database entry with ProductCode '{BA7A0342-73FF-44AB-9A15-A809E178C99D}'.
MSI (c) (74:80) [10:57:32:031]: APPCOMPAT: no matching ProductCode found in database.
MSI (c) (74:80) [10:57:32:031]: Transforms are not secure.
MSI (c) (74:80) [10:57:32:031]: PROPERTY CHANGE: Adding MsiLogFileLocation property. Its value is 'C:\AC\setup.log'.
MSI (c) (74:80) [10:57:32:031]: Command Line: CURRENTDIRECTORY=C:\AC CLIENTUILEVEL=0 CLIENTPROCESSID=1652 
MSI (c) (74:80) [10:57:32:031]: PROPERTY CHANGE: Adding PackageCode property. Its value is '{D9035255-09F1-4B9F-80B8-FB5FB8807D68}'.
MSI (c) (74:80) [10:57:32:031]: Product Code passed to Engine.Initialize:           ''
MSI (c) (74:80) [10:57:32:031]: Product Code from property table before transforms: '{BA7A0342-73FF-44AB-9A15-A809E178C99D}'
MSI (c) (74:80) [10:57:32:031]: Product Code from property table after transforms:  '{BA7A0342-73FF-44AB-9A15-A809E178C99D}'
MSI (c) (74:80) [10:57:32:031]: Product not registered: beginning first-time install
MSI (c) (74:80) [10:57:32:031]: PROPERTY CHANGE: Adding ProductState property. Its value is '-1'.
MSI (c) (74:80) [10:57:32:031]: Entering CMsiConfigurationManager::SetLastUsedSource.
MSI (c) (74:80) [10:57:32:031]: User policy value 'SearchOrder' is 'nmu'
MSI (c) (74:80) [10:57:32:031]: Adding new sources is allowed.
MSI (c) (74:80) [10:57:32:031]: PROPERTY CHANGE: Adding PackagecodeChanging property. Its value is '1'.
MSI (c) (74:80) [10:57:32:031]: Package name extracted from package path: 'MyProject.msi'
MSI (c) (74:80) [10:57:32:031]: Package to be registered: 'MyProject.msi'
MSI (c) (74:80) [10:57:32:031]: Note: 1: 2262 2: Error 3: -2147287038 
MSI (c) (74:80) [10:57:32:046]: Note: 1: 2262 2: AdminProperties 3: -2147287038 
MSI (c) (74:80) [10:57:32:046]: PROPERTY CHANGE: Modifying ALLUSERS property. Its current value is '2'. Its new value: '1'.
MSI (c) (74:80) [10:57:32:046]: Machine policy value 'DisableMsi' is 0
MSI (c) (74:80) [10:57:32:046]: Machine policy value 'AlwaysInstallElevated' is 0
MSI (c) (74:80) [10:57:32:046]: User policy value 'AlwaysInstallElevated' is 0
MSI (c) (74:80) [10:57:32:046]: Product installation will be elevated because user is admin and product is being installed per-machine.
MSI (c) (74:80) [10:57:32:046]: Running product '{BA7A0342-73FF-44AB-9A15-A809E178C99D}' with elevated privileges: Product is assigned.
MSI (c) (74:80) [10:57:32:046]: PROPERTY CHANGE: Adding CURRENTDIRECTORY property. Its value is 'C:\AC'.
MSI (c) (74:80) [10:57:32:046]: PROPERTY CHANGE: Adding CLIENTUILEVEL property. Its value is '0'.
MSI (c) (74:80) [10:57:32:046]: PROPERTY CHANGE: Adding CLIENTPROCESSID property. Its value is '1652'.
MSI (c) (74:80) [10:57:32:046]: TRANSFORMS property is now: 
MSI (c) (74:80) [10:57:32:046]: PROPERTY CHANGE: Adding VersionDatabase property. Its value is '200'.
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\Administrator\Application Data
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\Administrator\Favorites
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\Administrator\NetHood
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\Administrator\My Documents
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\Administrator\PrintHood
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\Administrator\Recent
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\Administrator\SendTo
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\Administrator\Templates
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\All Users\Application Data
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\Administrator\Local Settings\Application Data
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\Administrator\My Documents\My Pictures
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\All Users\Start Menu\Programs\Administrative Tools
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\All Users\Start Menu\Programs\Startup
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\All Users\Start Menu\Programs
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\All Users\Start Menu
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\All Users\Desktop
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\Administrator\Start Menu\Programs\Administrative Tools
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\Administrator\Start Menu\Programs\Startup
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\Administrator\Start Menu\Programs
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\Administrator\Start Menu
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\Administrator\Desktop
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\All Users\Templates
MSI (c) (74:80) [10:57:32:046]: SHELL32::SHGetFolderPath returned: C:\Windows\Fonts
MSI (c) (74:80) [10:57:32:046]: Note: 1: 2898 2: MS Sans Serif 3: MS Sans Serif 4: 0 5: 16 
MSI (c) (74:80) [10:57:32:046]: PROPERTY CHANGE: Adding Privileged property. Its value is '1'.
MSI (c) (74:80) [10:57:32:046]: Note: 1: 1402 2: HKEY_CURRENT_USER\Software\Microsoft\MS Setup (ACME)\User Info 3: 2 
MSI (c) (74:80) [10:57:32:046]: PROPERTY CHANGE: Adding USERNAME property. Its value is 'MyProject'.
MSI (c) (74:80) [10:57:32:046]: Note: 1: 1402 2: HKEY_CURRENT_USER\Software\Microsoft\MS Setup (ACME)\User Info 3: 2 
MSI (c) (74:80) [10:57:32:046]: PROPERTY CHANGE: Adding COMPANYNAME property. Its value is 'WhereIsMyTransport'.
MSI (c) (74:80) [10:57:32:046]: PROPERTY CHANGE: Adding DATABASE property. Its value is 'C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\4136ffe.msi'.
MSI (c) (74:80) [10:57:32:046]: PROPERTY CHANGE: Adding OriginalDatabase property. Its value is 'C:\AC\MyProject.msi'.
MSI (c) (74:80) [10:57:32:046]: Machine policy value 'MsiDisableEmbeddedUI' is 0
MSI (c) (74:80) [10:57:32:046]: PROPERTY CHANGE: Adding SourceDir property. Its value is 'C:\AC\'.
MSI (c) (74:80) [10:57:32:046]: PROPERTY CHANGE: Adding SOURCEDIR property. Its value is 'C:\AC\'.
MSI (c) (74:60) [10:57:32:046]: PROPERTY CHANGE: Adding VersionHandler property. Its value is '4.05'.
=== Logging started: 2015/01/20  10:57:32 ===
MSI (c) (74:80) [10:57:32:062]: Note: 1: 2262 2: PatchPackage 3: -2147287038 
MSI (c) (74:80) [10:57:32:062]: Machine policy value 'DisableRollback' is 0
MSI (c) (74:80) [10:57:32:062]: User policy value 'DisableRollback' is 0
MSI (c) (74:80) [10:57:32:062]: PROPERTY CHANGE: Adding UILevel property. Its value is '5'.
MSI (c) (74:80) [10:57:32:062]: PROPERTY CHANGE: Adding ACTION property. Its value is 'INSTALL'.
MSI (c) (74:80) [10:57:32:062]: Doing action: INSTALL
MSI (c) (74:80) [10:57:32:062]: Note: 1: 2262 2: ActionText 3: -2147287038 
Action start 10:57:32: INSTALL.
MSI (c) (74:80) [10:57:32:062]: UI Sequence table 'InstallUISequence' is present and populated.
MSI (c) (74:80) [10:57:32:062]: Running UISequence
MSI (c) (74:80) [10:57:32:062]: PROPERTY CHANGE: Adding EXECUTEACTION property. Its value is 'INSTALL'.
MSI (c) (74:80) [10:57:32:062]: Doing action: DIRCA_CheckFX
Action start 10:57:32: DIRCA_CheckFX.
MSI (c) (74:80) [10:57:32:062]: Note: 1: 2235 2:  3: ExtendedType 4: SELECT `Action`,`Type`,`Source`,`Target`, NULL, `ExtendedType` FROM `CustomAction` WHERE `Action` = 'DIRCA_CheckFX' 
MSI (c) (74:D8) [10:57:32:078]: Invoking remote custom action. DLL: C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\MSIC.tmp, Entrypoint: CheckFX
MSI (c) (74:08) [10:57:32:078]: Cloaking enabled.
MSI (c) (74:08) [10:57:32:078]: Attempting to enable all disabled privileges before calling Install on Server
MSI (c) (74:08) [10:57:32:078]: Connected to service for CA interface.
Action ended 10:57:32: DIRCA_CheckFX. Return value 3.
MSI (c) (74:80) [10:57:32:171]: Doing action: FatalErrorForm
Action start 10:57:32: FatalErrorForm.
MSI (c) (74:80) [10:57:32:171]: Note: 1: 2235 2:  3: ExtendedType 4: SELECT `Action`,`Type`,`Source`,`Target`, NULL, `ExtendedType` FROM `CustomAction` WHERE `Action` = 'FatalErrorForm' 
MSI (c) (74:60) [10:57:32:171]: Note: 1: 2262 2: Error 3: -2147287038 
Info 2898. For VSI_MS_Sans_Serif13.0_0_0 textstyle, the system created a 'MS Sans Serif' font, in 0 character set, of 13 pixels height.
MSI (c) (74:60) [10:57:32:171]: Note: 1: 2262 2: Error 3: -2147287038 
DEBUG: Error 2826:  Control Line1 on dialog FatalErrorForm extends beyond the boundaries of the dialog to the right by 3 pixels
The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2826. The arguments are: FatalErrorForm, Line1, to the right
MSI (c) (74:60) [10:57:32:171]: Note: 1: 2262 2: Error 3: -2147287038 
DEBUG: Error 2826:  Control Line2 on dialog FatalErrorForm extends beyond the boundaries of the dialog to the right by 3 pixels
The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2826. The arguments are: FatalErrorForm, Line2, to the right
MSI (c) (74:60) [10:57:32:187]: Note: 1: 2262 2: Error 3: -2147287038 
DEBUG: Error 2826:  Control BannerBmp on dialog FatalErrorForm extends beyond the boundaries of the dialog to the right by 3 pixels
The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2826. The arguments are: FatalErrorForm, BannerBmp, to the right
MSI (c) (74:60) [10:57:32:187]: Note: 1: 2262 2: Error 3: -2147287038 
Info 2898. For VsdDefaultUIFont.524F4245_5254_5341_4C45_534153783400 textstyle, the system created a 'MS Sans Serif' font, in 0 character set, of 13 pixels height.
MSI (c) (74:60) [10:57:32:187]: Note: 1: 2262 2: Error 3: -2147287038 
Info 2898. For VSI_MS_Sans_Serif16.0_1_0 textstyle, the system created a 'MS Sans Serif' font, in 0 character set, of 20 pixels height.
MSI (c) (74:58) [10:57:32:203]: Note: 1: 2731 2: 0 
Action ended 10:57:34: FatalErrorForm. Return value 1.
Action ended 10:57:34: INSTALL. Return value 3.
MSI (c) (74:80) [10:57:34:937]: Destroying RemoteAPI object.
MSI (c) (74:08) [10:57:34:937]: Custom Action Manager thread ending.
=== Logging stopped: 2015/01/20  10:57:34 ===
MSI (c) (74:80) [10:57:34:953]: Note: 1: 1708 
MSI (c) (74:80) [10:57:34:953]: Note: 1: 2262 2: Error 3: -2147287038 
MSI (c) (74:80) [10:57:34:953]: Note: 1: 2262 2: Error 3: -2147287038 
MSI (c) (74:80) [10:57:34:953]: Product: MyProject -- Installation failed.

MSI (c) (74:80) [10:57:34:953]: Windows Installer installed the product. Product Name: MyProject. Product Version: 1.0.3. Product Language: 1033. Installation success or error status: 1603.

MSI (c) (74:80) [10:57:34:953]: Grabbed execution mutex.
MSI (c) (74:80) [10:57:34:953]: Cleaning up uninstalled install packages, if any exist
MSI (c) (74:80) [10:57:34:953]: MainEngineThread is returning 1603
=== Verbose logging stopped: 2015/01/20  10:57:34 ===

Is anyone able to tell me what is wrong?


Solution

  • That project type (which was killed from visual studio and sadly brought back to life as an extension after thousands of app developers complained it was gone) is known by windows installer experts to be of very poor quality. It is a failure in many ways. In this case it's including a custom action to detect the NetFX version and it's blowing up and aborting the installation. My guess is it's written in Native Code using a compiler / libraries that lacks Windows XP support.

    If I was you, I'd consider checking out Windows Installer XML (WiX) or InstallShield Limited Edition. Both are free, the former is open source. If you go the WiX route, I maintain an open source project on CodePlex called IsWiX. IsWiX gives you project scaffolding and graphical designers to write 99% of your installer. The shortcuts designer isn't finished yet so that we be about 5 lines of XML you have to author by hand. Examples of shortcuts can be found in the IsWiX installer source tree.