All of what you're trying to achieve sounds eminently possible using
Windows Installer. I'm not sure if non-MSI setup systems can even
support advertised installation using advertised shortcuts.

With regards to "putting the entire app into the users profile area if
on Vista+[1], or program files for XP-" just no. Correct behaviour would
be to put the app into the users profile area *regardless* of operating
system when run by a user without administrator privileges. I get the
impression you're trying to do it that way because on Vista & later, UAC
forces you to whereas on XP & earlier you can break Microsoft's platform
guidelines without consequence. Do it the right way on all systems &
you'll cause yourself less grief trying to test your packages during
development & support your packages once they're out in the wild.

On the x86/x64 issue, you're correct in that you can't access the 64-bit
specific areas of the system (e.g non-WOW6432Node areas of the Registry,
64-bit Program Files directories etc.) from a 32-bit package. If you
really need to install 64-bit binaries to 64-bit locations the only
properly supported solution is to build 2 packages, one for x86 systems
& one for x64 systems. You can then either bootstrap them together & run
the correct one for the system or leave it to the users to work out. x64
packages won't run on x86 systems but you should probably condition the
x86 one with "NOT VersionNT64" so it's blocked from installing on x64
systems (otherwise it defeats the purpose of the exercise).

I haven't used Windows Installer advertisement much myself but the
Windows Installer pages on MSDN & other list regulars should be able to
help you out if you hit any snags.

Palbinder Sandher 
Software Deployment Engineer
T: +44 (0) 141 945 8500 
F: +44 (0) 141 945 8501 

http://www.iesve.com 
**Design, Simulate + Innovate with the <Virtual Environment>**
Integrated Environmental Solutions Limited. Registered in Scotland No.
SC151456 
Registered Office - Helix Building, West Of Scotland Science Park,
Glasgow G20 0SP
Email Disclaimer

-----Original Message-----
From: Chris [mailto:h48c...@werritech.com] 
Sent: 21 May 2011 14:01
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] A question about MSI capabilities

Greetings folks,

I'm considering using WIX for a setup solution, and would appreciate
advice
from some folks more experienced than myself with MSI as to whether what
I
want to do is possible with both MSI and the WIX toolset.

Our open-source application is regularly used in educational
institutions
as well as by home users. It also comprises of two distinct classes of
files; the core application and its help files (which don't need to be
touched by the end-user), and a set of end-user-modifiable files which
need
to be able to be edited by the user and thus installed per-user.

For home user installs this isn't much of an issue, as we could just
install a full copy per-user (which is what happened in the past).
However
we do receive requests from institutional admins to allow an install
where
the core files are installed once (perhaps on a network, perhaps on a
single machine shared by many users), and links to the app created in
the
'All Users' profile so that all current and new users will see it. If a
user elects to run the app, an install-on-demand occurs to place the
editable files into the user's profile folder.

The application needs to be installable on Win2K upwards, and the
installer
needs to be able to function correctly when run by a limited user for a
single-user install (putting the entire app into the users profile area
if
on Vista+[1], or program files for XP-), but without limiting the
options
available for administrative installs.

Also, if we distribute an upgrade that happens to contain changes to the
above-mentioned editable file set, it would be helpful if that upgrade
could auto-execute the next time the user runs the app after an
admin installs the upgrade.

Finally, it would be ideal if the same MSI could contain both 32 and
64-bit
binaries, and would install the appropriate one correctly. (My past
understanding of this - which may be very out of date - is that unless
the
MSI was marked as being for 64-bit windows, any binaries installed would
get put into 'Program Files (x86)', even if they were 64-bit, so it
wasn't
just a case of choosing the right binary). However this isn't essential.

I am in particular fairly hazy about the install-on-demand stuff. I know
that you can specify that a component be installed on demand, what I am
unsure about is exactly how to set up the shortcuts to cause it to all
automagically happen. (Also, I presume that Windows will squirrel away
the
original MSI somewhere in order to do this - like it does for repair I
suppose?)

Advice appreciated.

[1] I realize that Vista has compatibility folders, but I would rather
not
even try to touch system folders for limited users, regardless on
whether
or not the OS will redirect the write. According to
http://msdn.microsoft.com/en-us/library/dd408068%28VS.85%29.aspx,
%LocalAppData%\Programs\Vendor is an acceptable location to install
per-user binaries.

-- Chris

------------------------------------------------------------------------
------
What Every C/C++ and Fortran developer Should Know!
Read this article and learn how Intel has extended the reach of its 
next-generation tools to help Windows* and Linux* C/C++ and Fortran 
developers boost performance applications - including clusters. 
http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users



------------------------------------------------------------------------------
What Every C/C++ and Fortran developer Should Know!
Read this article and learn how Intel has extended the reach of its 
next-generation tools to help Windows* and Linux* C/C++ and Fortran 
developers boost performance applications - including clusters. 
http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to