Download presentation
Presentation is loading. Please wait.
Published byWilliam Dobson Modified over 11 years ago
1
Where Developers Matter Vista Enable Your Applications Fredrik Haglund, Regional Developer Evangelist fhaglund@codegear.com
2
Agenda What is User Account Control in Vista? Other Compatibility Issues on Vista Running as Standard User User Interface Changes in Vista Demo – Migration BDE COM and COM with Elevation Signing
3
Vista Enable Your Applications
4
What is User Account Control in Vista? Why? How?
5
UAC – Elevation Demo Over the Shoulder elevation prompt: Elevation prompt:
6
UAC – Architecture Access Token Split at Login Elevation Prompt Secure Desktop Installer Detection User Interface Privilege Isolation Virtualization/Redirection
7
UAC – Virtualization (Redirection)
8
Other Compatibility Issues on Vista Services Isolation IE – Protected Mode Windows Resource Protection 64-bit Windows Vista Networking Version Checking Shell changes Removed components – (WinHelp)
9
Running as Standard User Do not assume user is an Admin! Follow Guidelines A Standard User can not: Change files in Program Files folders Change files in Windows or System32 folders Change registry under HKLM\Software Change the local machines date and time Install or uninstall Services Register COM Server (globally)
10
User Interface Changes in Vista DWM – Desktop Window Manager Glass, Thumbnail and Flip 3D Rendering - Black borders, High Dpi, UI themes New UI elements: Shield, FileDialogs, TaskDialog, etc
11
New in C++/Delphi 2007 for Vista Enable Runtime Theme option Component: TTaskDialog, TFileOpenDialog, TFileSaveDialog Property TCustomForm.GlassFrame Property Application.MainFormOnTaskBar Function TaskMessageDlg Global var UseLatestCommonDialogs
12
Enable runtime theme
13
Manifest - requierdExecutionLevel asInvoker – (Default in D2007) highestAvailable requireAdministrator
14
Manifest content
15
Redesign Do not open files or registry keys with Write flag Save data, log files, etc. in the right location using SHGetFolderPath CSIDL_PERSONAL { My Documents } CSIDL_APPDATA { Application Data, new for NT4 } CSIDL_LOCAL_APPDATA { non roaming, user\Local Settings\Application Data } CSIDL_COMMON_APPDATA { All Users\Application Data } CSIDL_MYPICTURES { My Pictures, new for Win2K } CSIDL_COMMON_DOCUMENTS { All Users\Documents }
16
SHGetFolderPath
17
RunAsAdmin Launch application running as administrator Use Application.Handle to delay elevation if app is minimized. No handle always gives direct foreground elevation.
18
RunAsAdmin
19
Using COM class for Admin tasks COM Server must be an EXE EXE must have requireAdministrator to install COM objects correctly Registration of COM Class must add value LocalizedString (and resource string in executable) add key Elevation and value Enabled = 1
20
Elevated COM calls Use Moniker to create elevated CoClass from User Process
21
The Shield - SetElevationRequiredState Call function with Button as parameter to add Shield symbol
22
Test your application – identify problems Classify your application as Standard User, Admin or Mixed. Add application Manifest Redesign functionality User apps should write data to correct locations Split out admin stuff into a separate executable Redesign user interface Add shield to buttons Redesign installer Test again Optionally sign application (Authenticode) Determine whether to pursue the Windows Vista Logo program
23
Case Exampel: BDE Application Location of Database Files Virtualization Risk of Database Corruption Alias and BdeAdmin – Config Files TDatabase andTSession
24
Vista Enable Your Applications Demonstrations
25
Summary
26
What is User Account Control in Vista? Other Compatibility Issues on Vista Running as Standard User User Interface Changes in Vista Migration
27
Thank you
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.