It is very common on Vista (with UAC activated) to have a setup run through with no error, but to end up not installing anything. This happens when you try to write to protected resources (such as some parts of the file system, registry, etc). It’s easy to get past this on custom actions (using impersonate=”no” and Execute=”deferred”), but finding out how to do it on the “standard” components is not that easy. Luckily, it’s a one-liner. Just add the InstalledPrivileges attribute to your package, like this:
<Package Id='????????-????-????-????-????????????' Description='My Software' Manufacturer='MyCompany' InstallerVersion='250' InstallPrivileges='elevated'></Package>
And now your package will ask for elevation as soon as the execute sequence starts, resulting in all the actions/components being installed with elevated privileges.