Ahh, now I understand.  If you read the MSI SDK documentation about 
WindowsVolume it says:

"Do not use the WindowsVolume property in the Directory colum of the Directory 
table. The WindowsFolder property contains the path to the Windows folder."

I understand your use of "var" better now and maybe your customers expect it.  
Anyway, the documentation says don't use WindowsVolume.  If you really want to 
have a directory point to WindowsVolume, you'll need to use a CustomAction to 
set the appropriate Directory.  Seems kinda' strange that the Windows Installer 
requires you to go all the way around like this but... whatever.

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Gus Grubba
Sent: Friday, February 16, 2007 6:01 AM
To: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] Root folder other than "Program Files"

Rob,

First, thanks for taking the time. Second, sorry for being terse!
Here we go:

The actual error put out by light is:

error LGHT0204 : ICE99: The directory name: WindowsVolume is the same
as one of the MSI Public Properties and can cause unforeseen side
effects.
make: *** [product.msi] Error 204

The directory block looks like this:

<Directory Id="TARGETDIR" Name="SourceDir">
        <Directory Id="ProgramFilesFolder">
                <Directory Id="COMPANYDIR" Name="Company Name">
                        <Directory Id="INSTALLDIR" Name="Product Name" />
                </Directory>
        </Directory>
        <Directory Id="ProgramMenuFolder" Name="Programs">
                <Directory Id="ProgramMenuDir" Name="Product Name" />
        </Directory>
        <Directory Id="DesktopFolder" Name="Desktop" />
        <Directory Id="WindowsVolume" Name="RootDisk">
                <Directory Id="VARDIR" Name="var">
                        <Directory Id="LOGDIR" Name="log" />
                        <Directory Id="PRDDBDIR" Name="ProductName">
                                <Directory Id="DBDIR" Name="db" />
                        </Directory>
                </Directory>
        </Directory>
</Directory>

What goes into "var" are the logs and database files. It just seems
to be too strange to put this into the application's directory. These
files, specially the databases can grow rather large. Under UNIX, the
database is usually a storage of its own (RAID). This "product" is
rather large and it is unusual (but not impossible) to have it
installed on some computer that is used for other tasks.

The Installer has many custom dialogs and these directories above
should all be configurable. I'm just trying to come up with
reasonable defaults.

Thanks!

g

On Feb 16, 2007, at 3:23 AM, Rob Mensching wrote:

> There isn't really such a location.  Most people just put their
> binaries in Program Files folder and go from there.  Nothing wrong
> with that (with modern version of the Windows Installer).  Putting
> stuff in "C:\var" would be very strange on a Windows machine.  I
> can tell you from personal experience, many users hate new stuff
> showing up in the root of their drives.
>
> Can you be more specific about what "barfs" means (a specific error
> message?) and what your authoring for this looks like exactly?
> <Directory Id="WindowsVolume"/> alone is not valid authoring for a
> Directory element so I'm wondering if that is just some short hand.
>
>
> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:wix-users-
> [EMAIL PROTECTED] On Behalf Of Gus Grubba
> Sent: Thursday, February 15, 2007 7:07 PM
> To: wix-users@lists.sourceforge.net
> Subject: [WiX-users] Root folder other than "Program Files"
>
>
> I guess the first question is: What is the Windows equivalent of /
> var? Where should a service/daemon running with the credentials of a
> system account store its runtime data?
>
> For now I'm creating and storing it in C:\var. Now comes the question
> in the subject line. How do you create this in WiX/MSI? The main
> application binaries and whatnot get installed in C:\Program Files
> \Company Name\Product Name just like everybody else. I have not for
> the life of me been able to figure out a way to have some files
> stored some place off the root. According to the MSI documentation,
> "WindowsVolume" should resolve to C:\ (or wherever Windows is
> installed). If I define a <Directory Id='WindowsVolume'>, light barfs
> telling me that is an MSI Public Property. Nothing I try seems to
> work. TIA!
>
> g
>
> ----------------------------------------------------------------------
> ---
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to
> share your
> opinions on IT & business topics through brief surveys-and earn cash
> http://www.techsay.com/default.php?
> page=join.php&p=sourceforge&CID=DEVDEV
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to