When developing applications for Vista, it is important to
keep the concept of elevated privileges in mind during design. The list of
tasks that require Administrator privileges is shorter that the list for
Windows XP, and architects should be aware of this when they are building in
features that require these privileges.
If your application does not require elevated privileges,
there is nothing more that needs to be done. It is ready to be deployed to Vista. This should be the type of application that is generally developed and architects
should strive to design the need to use Administrative tasks out of their
applications. If your application is targeting Administrators, then you
application needs to inform Vista that will need elevated privileges at launch.
This is done via the assemblies manifest and is demonstrated below. Without the
request for elevated privileges in the assembly, the first time the application
attempts to perform an action that required elevated privileges an exception
will be thrown.
If your application supports functionality that occasionally
requires elevated privileges, it is recommended that those features be
abstracted out to a separate executable that can be called from the main
application. The executables that require elevated privileges must be signed.