I've confirmed this as well in the latest sources. There appears to be no
fix committed in yet - the code in dutil tries to initialise the
ProgramFilesFolder variable with a call to SHGetFolderPath with csidl of
CSIDL_PROGRAM_FILESX86. Unfortunately, that API call on 32-bit Windows XP
fails as it doesn't know what CSIDL_PROGRAM_FILESX86 or
CSIDL_PROGRAM_FILES_COMMONX86. So I guess the code should fall back to use
the non X86 suffix versions or be a bit cleverer on how it initialises
those ProgramFilesFolder/CommonFilesFolder variables. I did a test and it
did fix the problem.

For my product I'm not too bothered about it and have simply got rid of the
"Options" button on the default bootstrapper app (we find its very rare for
anyone to modify the default installation folder so it's no great loss at
this time).

On 23 January 2012 14:46, Sam Morris <s...@red-redemption.com> wrote:

> On Mon, 23 Jan 2012 11:36:08 +0100, Peter Bulyaki wrote:
>
> > This bug was set to fixed, and I've been waiting for the next WiX build
> to
> > see the fix. Unfortunately the bug still appears to be there in 3.6.2520.
> >
> > Error 0x80004005: Failed to initialize built-in variable value
> > 'ProgramFilesFolder'.
> >
> > Briefly the problem is that the builtin burn variable
> "ProgramFilesFolder"
> > is not resolving on XP (32 bit) and Windows Server 2003 (32 bit).
> >
> > Here is how I'd like to use this variable:
> > <Variable Name='InstallFolder' Value='[ProgramFilesFolder]MyCompany' />
> >
> > Here is my log:
> > -----------------
> > [1560:1674][2012-01-23T10:47:13]: Initializing string variable
> > 'InstallFolder' to value '[ProgramFilesFolder]Agfa'
> > ...
> > ...
> > [1560:1174][2012-01-23T10:47:15]: Error 0x80004005: Failed to get shell
> > folder.
> > [1560:1174][2012-01-23T10:47:15]: Error 0x80004005: Failed to initialize
> > built-in variable value 'ProgramFilesFolder'.
> > [1560:1174][2012-01-23T10:47:15]: Error 0x80004005: Failed to get
> variable:
> > ProgramFilesFolder
> > [1560:1174][2012-01-23T10:47:15]: Error 0x80004005: Failed to set
> variable
> > value.
> > [1560:1674][2012-01-23T10:47:19]: Shutting down, exit code: 0x80070642
> > -----------------
> > After the assignment InstallFolder appears to be completely empty if
> > [ProgramFilesFolder] is part of the value. If I remove
> > [ProgramFilesFolder], then MyCompany gets assigned to it. It works fine
> on
> > Windows 7.
> >
> > I am not allowed to comment on the bug so should I file this as a new
> one?
>
> NB, this may also affect the setting of CommonFilesFolder.
>
> --
> Sam
>
>
>
> ------------------------------------------------------------------------------
> Try before you buy = See our experts in action!
> The most comprehensive online learning library for Microsoft developers
> is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
> Metro Style Apps, more. Free future releases when you subscribe now!
> http://p.sf.net/sfu/learndevnow-dev2
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
------------------------------------------------------------------------------
Try before you buy = See our experts in action!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-dev2
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to