Windows Installer 4.0
Windows Installer gets a full point upgrade with the release of Windows Vista. Most of the changes apply to the features of both user access and system protection. In particular it offers support for Windows Resource Protection and compatibility with Restart Manager, User Account Control and User Account Control Patching.
Microsoft has renamed Windows System File Protection (SFP) to Windows Resource Protection (WRP) in Windows Vista. Windows Installer handles WRP by skipping any protected files in the installation and simply records a log file entry and continues the installation. This is different from Windows XP (and 2000) where it would call on SFP to install the file for it (which would the result in Windows Installer error 1933. WRP protects both files and registry keys. As with files, if Windows Installer encounters a protected registry key in the installation, it skips it, logs a warning in the log file and moves on.
For More information on Windows Installer and WRP, visit http://msdn2.microsoft.com/en-us/library/aa372868.aspx
Vista relies on Restart Manager to stop and restart applications during installation as opposed to requiring users to close applications manually. This minimizes the need for system restarts to upgrade files that may be in use. When a restart is needed, Restart Manager captures the state of the system including any open applications, files, or unsaved work. It then restores this state after the installation is complete, thereby ensuring that the running applications do not affect the installation with minimal impact on the user.
For more information on Restart Manager, visit http://msdn2.microsoft.com/en-us/library/aa372466.aspx
By now I’m sure you know that User Account Control (UAC) is the new security feature of Windows Vista which allows users to run with standard user privileges, even if you are logged in with an administrative account. Then when you try to perform an action that requires administrative privileges, UAC requests authorization from the user. Now we can rely on Windows Installer v4 to install all applications as managed applications (automatically installed with elevated privileges). Once an application is registered as a managed application, it no longer prompts for authorization during installation. Of course those applications that are not registered as managed will still see the usual UAC prompt (which as a standard user, requires admin credentials to be entered).
It can also patch applications without requiring elevated privileges, but to pull this off there are several conditions that must be met. Most notably, it must be digitally signed. Among the other requirements are that the application has to have been installed for all users (or per machine). I won’t go into all that is required here, but the bottom line is that when patches are properly prepared for Vista, they will install under standard user privileges without prompting.
For more information on patching with UAC, visit http://msdn2.microsoft.com/en-us/library/aa372388.aspx

Email This!
Digg it!
Del.icio.us
Reddit!
Newsvine
Comments
Bob, you might want to tell people about the new white paper we just released together on Windows Installer. It is chock full of information on all versions of Windows Installer, including 4.0 and is a free download. It can be found at http://www.reso-net.com/articles.asp?m=8 or at http://www.appdeploy.com/articles/Working_with_Windows_Installer.pdf. Enjoy!
Posted by: NelsonR | February 23, 2007 12:32 PM
By the way, this article was initiated by a post in the "Ask Bob" forum here at realtime-vista. If you would like to see a topic covered or more detail on a topic that has already been covered, please let me know in the forum!
Posted by: Bob | February 23, 2007 12:35 PM
I have developed a program using Java. I want to install it on CD so thet user can run program from CD. CD must be copy and print protected. If you have any such please let me know.
Thanks with regards
Shrikant S. K.
Posted by: Shrikant S. K. | June 21, 2007 7:29 AM
Not sure how much help I can offer on this one. Anyone else? The forum may be a better place for the question.
This is not so much an installation issue as it is making sure your code references the files it needs in its current directory and then including all the files you need in that current directory. From there, just keep any "writing"you need to do limted to the user's profile and you should have no problems running from CD.
Posted by: Bob | June 21, 2007 12:41 PM