Turn off the Ad Banner
To print: Select File and then Print from your browser's menu. ----------------------------------------------- This story was printed from CdrInfo.com, located at http://www.cdrinfo.com. -----------------------------------------------
Appeared on: Friday, August 19, 2005 Windows Vista Public Beta 1 - Part 1
A couple of years after the first releases of Windows Longhorn, Microsoft has released Windows Vista public Beta 1 (codename Longhorn). A few months later microsoft will also deliver beta 2 and finally, the final release of Windows Vista is scheduled in the year 2006. Microsoft promises us that this new operating system will deliver a new, powerful security system, reliability and performance improvements.
More specifically, Amy Stephan, a senior product manager with the Windows client unit has stated that Windows Vista will:
Stephan also said that "Microsoft's goal is to allow administrators to install Longhorn on new systems in 15 minutes".
We tested the Beta version for you, in order to find out if Microsoft's promises are going to become reality. Let's take look, starting with the technical improvements. This review will be updated soon, to include screenshots of visual improvements as well as other pertinent information.
In this first part, I will introduce some technical information as is has been given by Microsoft. For the visual changes (screenshots, etc) please wait for an update of this review soon. (It will be available in the Visual Improvements section). So let's start with the technical information.
According to Microsoft, Windows Vista will provide more visual effects to users in order to satisfy their needs (animation, transitions, fades, all in a glitch-free environment). Windows Vista introduces a series of new visual effects such as AERO, Microsoft Windows Presentation Foundation, formerly code named "Avalon" and Extensible Application Markup Language (XAML) technologies with the help of Windows Graphics Foundation 2.0 (WGF), also known as Direct3D10.
New Graphics Driver Model: Windows Vista introduces a new graphics driver model. This is used to enable constant use of the graphics processor unit (GPU) for the rich graphics used by the operating system and the applications. The GPU memory manager and scheduler in this driver model also enables multiple graphics applications to use the GPU to run simultaneously.
AERO (Authentic, Energetic, Reflective, Open ): AERO is the user experience guidelines for Windows Vista, governing the look and feel of the operating system. These guidelines express not just the way the pixels are drawn, but how the user interacts with the system and the feelings it should evoke.
For 90 percent of all applications, looking like an AERO application means developers need to just do a few things:
Vista users are going to love transparency effects
AERO themes and AERO Wizard framework: In addition to the new driver model, Windows Vista developers will also be able to easily apply AERO themes to their applications and common controls. By using the AERO themes, application developers can use the new look of Windows Vista within their application. The design and functionality of applications that use these themes will appear to be an extension of Windows Vista.
Windows Vista will also support the AERO Wizard framework, thereby extending the AERO themes. The AERO Wizard framework gives native application developers the ability to use the AERO style in their dialog boxes. One of the benefits of the Wizard framework is that it automatically adjusts the font style, font color, font size, and control visual to the appearance dictated by the user's theme. If developers want to use other features of the AERO Wizard framework without the new theme support, the "Classic" or Microsoft Windows 2000 Server look is still available. In addition to adjusting the visual appearance, the AERO Wizard framework enables developers' pages to adjust to the size of the property sheet on a page-by-page basis. While enabling users to resize any page, the automatic adjustment will help optimize the "Size to Content" ratio for the developer. The AERO Wizard framework will also enable developers to rename or hide command buttons in the wizard. For example, if a developer is creating a wizard to enable file sharing, one of the buttons in the wizard might be renamed "Share File" instead of the standard "Next". Lastly, the AERO Wizard framework supports the ability to brand the wizard with a company logo by supplying a background bitmap to be easily positioned on each of the wizard screens.
Task Dialogs : In Windows Vista, task dialogs will replace the message box or most other instances of a single-step prompt or error message. Task dialogs are a dramatic upgrade in the visual appearance and functionality of the error message experience, adding such features as the main instruction and supporting text and links. The API for the Task dialog is primarily a replacement of the existing message box, although it adds support for features such as hyperlinks and customizable button labels and icons.
Copying files on Windows Vista
In Windows Vista, WinFX supports an API that enables developers to host Windows Forms controls and forms in a Windows Presentation Foundation application, and vice versa. When a developer creates an application in Windows Presentation Foundation, most of the code is written and implemented in XAML. XAML is faster, easier to implement, and easier to localize, making it a better choice than the equivalent procedural code. With XAML, there is no performance penalty because XAML is an XML-based representation of the object model.
Windows Presentation Foundation itself consists of two main parts: the engine and the programming framework.
XAML Programming : XAML is an XML-based markup language that can be used to declaratively program the Windows Presentation Foundation object model. It is especially useful for implementing your application's UI. Each XAML tag corresponds to an object model class. A tag also usually has a collection of attributes that corresponds to the properties of the tag's associated class. At compile time, the parser converts the XAML into a partial class that contains equivalent procedural code. Each XAML tag becomes an instance of the corresponding object model class, and the tag's attribute values are assigned to the corresponding object properties. Then the partial class that is created from the parsed XAML is combined with the page's code-behind file by the common language runtime compiler to create an object for the page.
Source: Microsoft
User Account Protection (UAP) : Windows Vista changes the traditional Windows privilege model to help prevent users from running programs that attempt to perform operations that the user doesn't really intend or authorize. To that end, User Account Protection (formerly called Least-privileged User Account, or LUA) enables users to run at low privilege most of the time, while being able to easily run applications requiring more privilege as necessary. There are two key things to consider when building applications to make use of User Account Protection (UAP): the privilege specification model and the standard UAP execution model.
Privilege Specification Model : UAP extends the access token system already in use for managing Windows logons with a new token mechanism that supplies each administrator logon with two security tokens, a UAP token and a full admin token.
Access tokens contain a logon session's security information, identifying a user and their groups and privileges. The operating system uses the token to control access to securable objects and controls the ability of the user to perform various system-related operations on the local computer. UAP tokens are a special kind of access token that define the minimum privileges needed to run-the default interactive logon privileges of a Windows Vista user on a system with UAP support enabled. The second, full admin token has the maximum privileges authorized for the admin account.
Here's an example of the control flow of running an application under UAP:
Keep in mind that UAP compliance is all about least privilege. If your application runs properly under a nonadministrative account in Windows XP or Windows Server 2003, you won't run into any problems on Windows Vista.
To ensure that your application runs properly under Windows Vista, you should test your application as a USER.
For an application that provides different functions depending on whether the user is an Administrator or USER, there will be a way to allow for variable access to the application's administrative features.
Network Access Protection Framework: To ensure the health and security of a network, particularly one supporting roaming computing and the attachment of portable devices, Windows Vista provides the Network Access Protection (NAP) framework. NAP enables system administrators to define and enforce policies that require network clients to establish their trustworthiness and compatibility with the network before being given a specified access. Client systems are either given full access or placed in a restricted subsection of the network, where they have only limited access.
Mapping a network drive is easier that before
Developers should use API-level access to NAP and the Windows Filtering Platform (WFP) to reduce user and administrator security workloads by:
Network access client software and network access servers, which participate in the NAP, ensure that only healthy systems log on to the network. Unhealthy systems are put on a restricted VLAN for remediation so they can get on to the network.
A reliable application is one that behaves exactly as its user expects it to behave. Windows Vista offers an extensive set of new APIs and developer services on the Web to make your applications predictable and manageable to end users, and to diagnose them when they are not.
A major tenet of the Windows Vista experience is that the system and applications "just work." Users are expecting applications that are stable and easy to install and use. A stable application is one that avoids hangs, crashes, and reboots. Windows Vista provides developers with a set of tools for creating applications that will help optimize system stability and performance.
Developers using Windows Vista can help protect users against losing data or work because of a software problem or system instability. Windows Vista provides a well-defined mechanism for all user-mode applications to register themselves as restart-able and provide document recovery interfaces. Used in conjunction with the Windows Vista Restart Manager technology, Windows Vista application and data recovery mechanisms make application installation and upgrading less invasive: preserving the running state of applications that need to be interrupted for system reconfiguration. Improved I/O cancellation support in Windows Vista increases application responsiveness. In addition to these mechanisms, the Windows Feedback Platform (WFP) supports error handling for application crashes and hangs and provides reporting and customer response management for these errors.
Restart Manager works with Microsoft Update, Windows Update, Microsoft Windows Server Update Services, Microsoft Software Installer, and Microsoft Systems Management Server to detect processes that have files in use and to gracefully stop and restart services without the need to restart the entire machine. Applications that are written to take advantage of the new Restart Manager features can be restarted and restored to the same state and with the same data as before the restart.
I/O Cancellation Support : Windows applications become unresponsive when a function or API is called from a user interface (UI) thread that does not complete within a short period of time and is not cancelable. The UI becomes blocked for a long enough time such that the user of the application decides that it is unlikely to recover. This leads the user to attempt to terminate the application (usually by clicking the X on the window's title bar) or even to reboot the computer. Usability studies conducted by Microsoft show that even periods as short as a few seconds are too long for many users.
Developers sometimes make assumptions about the users' environments that are not correct. Notably, they assume that input or output (I/O) operations to devices will complete quickly. This may not be true for some types of devices, especially for networked devices. Network congestion or latencies can wreak havoc with an application's responsiveness.
Investigations of Windows XP hang reports have resulted in improved I/O cancellation support in Windows Vista, including new Win32 APIs.
One of the most significant improvements is the CancelSynchronousIo API, which enables synchronous file I/O calls to be canceled (OpenFile or GetFileAttributes, for example). Since it must be called from another thread, an application must support multi-threading. (Multi-threading is almost always required for applications to remain responsive.)
Another addition is an enhanced version of an existing API: CancelIoEx. This API requests all pending I/O operations for the specified file handle to be canceled.
These new APIs are supported by corresponding new kernel features. One significant change is that driver-level cancellation for create requests is now supported in Windows Vista.
Obtaining Application Feedback : Windows Vista provides enhanced feedback and diagnostic mechanisms to developers through the mechanisms found in Windows Feedback Platform (which extends the Windows Error Reporting feature found in earlier releases of Microsoft Windows). Specifically, Windows Feedback Platform:
Windows Vista provides an extensible reporting environment, online problem tracking, and integration with the development community. With this application, developers can collect the data needed to help debug problems from instances of their applications running in the field. This information is used to generate reports that are archived and studied at a Microsoft developer portal site.
Users can found easier solutions to their problems now
In addition, this technology supports system administrators and other IT professionals by allowing them to:
End users benefit not only by improvements to their applications but by having error handling with a consistent look and feel, which appears to be native to Windows Vista. In addition, end users can expect:
All this is supported, while still helping to:
The Windows Communication Foundation (formerly code name "Indigo") Web service APIs make it easy to build and consume secure, reliable, and transacted Web services. New peer-to-peer capabilities enable the discovery and sharing of data between computers and nearby devices. Performance improvements have made communications faster than ever before and improved support for standards like IPv6, WS-*, and RSS makes Windows Visa a great way to write applications that communicate with each other.
Windows Communication Foundation: The vast majority of applications that are developed today need to communicate with other applications. The ability to share data between a wide network of services that can communicate with other platforms and devices is what Web services are all about. Windows Communication Foundation is Microsoft's unified programming model for building Web service applications with managed code. It extends the .NET Framework to enable developers to build secure, reliable, and transacted Web services that interoperate across platforms and integrate with existing investments. Windows Communication Foundation is built from the ground-up to combine and extend the capabilities of existing Microsoft distributed systems technologies, including Enterprise Services, System.Messaging, .NET Remoting, ASMX, and WSE to deliver a unified development experience.
The Windows Communication Foundation takes Web services to the next level. Support for the WS-* protocols means that Web services can easily take advantage of interoperable security, reliability, and transaction support required by businesses today. Developers can now focus on business logic and leave the underlying plumbing to Windows Communication Foundation. Windows Communication Foundation also provides opportunities for new messaging scenarios with support for additional transports like TCP and named pipes and new channels like the Peer Channel. More flexibility is also available around hosting Web services. Windows Forms applications, ASP.NET applications, console applications, Windows services, and COM+ services can all easily host Web service endpoints on any protocol, which includes full HTTP.SYS support. The Windows Communication Foundation also has many options for digitally signing and encrypting messages, including the following token support: Security Assertion Markup Language (SAML), Kerberos, X.509, and Username.
The Windows Communication Foundation Web service platform provides flexibility and extensibility. For developers who want to access underlying messages directly or who want strong control over Web service contracts, the ability to explicitly define messages and how they are exchanged gives developers the easy manageability they need. Indigo also provides extensibility hooks so that developers can write custom channels and extensions that plug directly into the Communication Foundation pipeline.
Peer-to-Peer : Windows Vista provides capabilities for discovering and communicating between applications without the need for centralized servers. The peer-to-peer capabilities of Windows Vista give users and applications the ability to discover and interact with others on the network in a secure fashion.
Central to the capabilities of the peer-to-peer support in Windows Vista is the Peer Name Resolution Protocol (PNRP), which enables dynamic name publication and resolution. Today, names are assigned to computers in a relatively static fashion along with their IP addresses. PNRP provides a much more dynamic ability to register multiple names on a computer, to have multiple computers register a single name, and to even have applications register names. Name records can contain additional metadata describing the associated resource. All of this is done in a secure fashion that prevents spoofing. Developers can use standard name resolution APIs, like getaddrinfo, to resolve their PNRP names.
Peer-to-peer networking enables multiparty interaction by creating meshes of nodes that self-organize into a robust communication group; messages can be sent to all mesh nodes through one or more hops. New nodes can be dynamically added and removed from the mesh without losing the overall connectivity. Secure meshes can be created with restricted membership. Meshes enable the publication of shared data records that are automatically replicated and persisted among all members. Everyone in the group sees updates to the data immediately, as if it were performed locally.
The Windows Communication Foundation Web service API provides a multiparty messaging channel (called the Peer Channel) that developers can use to create large, scalable meshes for sending and receiving Web service messages.
The peer-to-peer capabilities of Windows Vista also provide the ability for applications to find "People Near Me." This enables developers to create applications that enumerate individuals who are physically near them on the network so that data can be easily shared. Using peer-to-peer APIs, individuals can be invited to participate in activities, such as voice chat or games.
Quality of Service : Quality of Service (QoS) technologies manage the transmission of particular types of data-for instance streaming media-to ensure that data is transmitted at the right time with the right speed. Previous releases of the Windows operating system provide support for the industry standard Generic Quality of Service (gQOS), using Diffserv and Intserv and RSVP signaling. Windows Vista extends QoS functionality by adding network awareness and greater user-friendliness through the quality Windows Audio Video Experience (qWAVE) package (available through the .NET Framework) and a new implementation of the Network Location Awareness Service (NLA2).
Both the qWAVE and NLA2 technologies are designed to be aware of network changes and capabilities to provide adaptive QoS support. Run-time feedback allows applications to dynamically adjust to network bandwidth changes by transcoding (changing between digital video formats) or transrating (adjusting to network speeds by changing the video resolution). In addition, multimedia applications can use Windows Vista Quality of Service technology to proactively query network configurations and identify legacy devices that can drop packets or crash.
Windows Vista network applications can make use of qWAVE distributed administration control to provide consistent management of network resources through priorities.
The Windows Vista Quality of Service tools are designed to inform and empower end users by providing instant and meaningful feedback. For example, an end user typically has no indication that something like heavy network load may be causing a degradation of performance or a connection drop. Under Windows Vista, the system would quickly notify the user of the degradation and its cause, enabling the user to take action.
The Windows Vista platform introduces new data storage and search technologies that enable developers to build applications that are searchable and that integrate disparate data formats—applications that find and share the data that users want to see.
New features targeted toward finding, organizing, and sharing data are accessible to developers through both Win32 and WinFX APIs. In particular, Windows Vista introduces a set of technologies based on the new XML Paper Specification (XPS) that is accessible through the Windows Presentation Foundation (formerly Windows code-named "Avalon") presentation technology. It also provides a complete RSS (Really Simple Syndication) subsystem that enables developers to find and consume RSS feeds through system-level APIs instead of through a dedicated RSS reader.
The Windows Vista XPS technologies are based on the XML Paper Specification that details the packaging model for developers to design new self-describing information formats. The WinFX runtime includes the XPS package APIs that enable developers to more easily create and process XPS-based containers or files (called "packages").
Windows Vista supplements the power and generality of the XPS packages with a specific document implementation called the "XPS Document" (also known as "Metro Reach"). XPS Document format enables easy document sharing across platforms, without the need for the authoring application. The XPS Document format supports many of the most common user needs by providing an optimized format for working with paginated documents.
To ensure cross-platform portability and device independence of XPS-based packages and XPS Documents, the XML Paper Specification is open and publicly available.
A XPS document is expressed in an application-independent way so that the content can be viewed and printed without requiring the original authoring application.
The XPS Document uses a well-defined and fixed-format layout, including pagination for its content, while still allowing for forward- and backward-compatibility with versioning, or extensions for other value-added scenarios.
Effectively, the XPS Document defines the default electronic paper object for Windows Vista, and is a native spool file format in the Windows Vista print architecture, as well as the native Windows Presentation Foundation print output.
The WinFX SDK documentation includes many references to the XPS Document (aka "Metro"), all of which center on the Metro Serialization Manager class (System.Windows.Reach.Serialization in the ReachFramework assembly).
RSS : RSS is an XML-based format used for syndicating news and Web logs (as well as other information) from Web sites. News sites are a common use for RSS feeds because they can easily send out headlines (or title in RSS format) and short descriptions, along with links to the full story to anyone subscribed to the feed (or channel). Blog authors use feeds by sending out full journals, conversation threads, short descriptions, or notifications of updates in RSS format.
The RSS support in Windows Vista provides three basic platform services.
These services are accessible through the Windows Vista RSS object model, which mirrors the major components of an RSS feed.
For more information, see the RSS site on the Windows Vista Developer Center.
You can extend the metadata system by writing custom property handlers, protocol handlers, and even enable the system to use non-file system data stores.
Full-Text Search : Let's say that you'd like a user to be able to ask Windows Vista Explorer to find all invoices that contain a purchase of a particular product. Clearly, that information is locked up inside the invoice file somewhere, but Explorer needs some way to access it.
There are basically two types of data stores: file system stores and non-file system stores. The invoice example is a simple file system store. Explorer can search information in the invoice if a developer provides an implementation of the IPropertyStore or IFilter interface for this new file type.
Advanced Search now has some very interesting features like filters
If you're working with a non-file system store, you need to write a protocol handler that allows Explorer to navigate through the data store. A protocol handler connects the Explorer with a non-file-system-based proprietary data store. This enables the Windows search system to index data within the store. For example, if you have a mail client that stores its list of received e-mail, you can provide indexing and search capability for each individual e-mail by providing a protocol handler. Often developers who create a new protocol handler for a custom data source will also need to implement an Explorer Namespace Extension to provide UI for the items that are displayed in the Explorer, such as context menu handlers, icons, etc.
Developing Applications : Windows Vista supports a number of new APIs to use when developing new applications. Applications should never hard code file paths to "well-known" locations. Use Known Folder APIs instead. The Known Folder APIs abstract the file system location from the functionality of the folder. This allows features like folder redirection. You should use existing Known Folders when one is semantically equivalent to what you need, for example, PDF documents stored in Documents. Otherwise, your application can create new known folders, for example, 3D Drawings, Shapes, Code Projects, etc.
You can use new Windows Vista APIs to query items in the Windows Search Engine. Your application can use the OLEDB/ADO from managed or unmanaged code to issue queries using a SQL-like syntax. In return, your application receives an OLEDB Recordset where the columns correspond to properties in the Windows Metadata System, for example, System.Photo.FNumber.
You can also use the unified metadata layer to read/write metadata from/to file formats. Your application can enumerate properties stored in a file, discover property descriptions (schema) as described in the system, and read and write values for properties.
The Common File Dialog has been updated. It has a number of new COM APIs. Some of the new features of the Common File Dialog are:
The Common File Dialog is also extensible. You can add new controls and change the layout of the dialog.
ClickOnce : Microsoft introduces ClickOnce with the .NET Framework 2.0 and Visual Studio 2005 as the successor to "no touch" deployment. The goal of ClickOnce is to make deploying client-side managed-code applications (such as those built with Windows Forms or, on Windows Vista , formerly Windows code name "Longhorn," the Windows Presentation Foundation, formerly code name "Avalon") as easy as deploying a Web application. Using ClickOnce, you can deploy and update applications to your clients through the Web, or a file share. You can deploy new versions of the applications by copying them to the install point. Clients will receive this version when they next start the application. For more information on the .NET Framework 2.0 version of ClickOnce, click here.
When using ClickOnce, users can expect:
Windows Vista extends the .NET Framework 2.0 set of ClickOnce features in several ways, including the capability for installations to perform some of the more traditional actions of an MSI deployment while still using automatic deployment and update. For example, on Windows Vista , ClickOnce can take advantage of the Background Intelligent Transfer Service (BITS) to allow a trickle-feed update of files in a way that is less obtrusive to the user. Additionally, the execution context in Windows Vista is very different and more robust, allowing applications to be hosted in a browser or run externally. On Windows Vista , ClickOnce also enables an application to create file associations (registering itself as the handler for a specific file type) without having to request additional permissions. Windows Vista also adds the concept of privacy information as part of the application manifest, allowing application creators to describe their privacy policy for information storage, reuse, and more.
After the application is published, users can navigate to the file share or Web site, or the location can be e-mailed to them. The user clicks the program.application link. This link is to a manifest file that contains information on the required assemblies, correct version, and additional information for the application. The ClickOnce technologies ensure that all dependencies are present, and that the correct version of the application is available on the client computer. The application is then executed as usual.
Although ClickOnce cannot be used for all types of applications or in all scenarios, it can provide an excellent means of deploying and upgrading an application. The benefits of the ease of updating the application mean that you can get the benefits of the rapid deployment of Web applications without sacrificing the rich interaction of a desktop Windows application.
Additionally, developers can use Authenticode certificates to sign ClickOnce manifests. This information is then presented to the user, showing that the application is coming from a trusted source. Developers can also associate a specific set of security policies with the application to set appropriate permissions.
Windows Installer : Microsoft also is making advances in Windows Installer (MSI) technology, the standard Microsoft installation solution, for Windows Vista . In particular, MSI integrates with the Windows Vista User Account Protection (UAP, formerly called Least-Privileged User Account or LUA) and with the Windows Vista Restart Manager.
Integration with the UAP means that users need not be logged in as Administrator to install an application. If an installation requires extra privileges, Windows Vista presents the user with the option to temporarily elevate their permissions for the install. See "An Overview of New Windows Vista Security Features for Developers."
Integration with the Restart Manager : A properly configured installer application should never force users to restart their computer-required services and applications will be restarted as needed. The Restart Manager handles interactions with other resource managers, running programs, and open files to dynamically free and reaccess services or applications as needed. See "Overview of Application Reliability Features for Developers in Windows Vista .
Mobile computers are a large and growing segment of the overall personal computer market, currently making up about 40 percent of the worldwide personal computer market and growing fast. In some countries such as Japan, laptop sales are outpacing desktop sales. But laptops, notebooks, and Tablet PCs present unique challenges to application developers. Some challenges include power management, network awareness, providing offline access to important data, taking advantage of multiple displays, grab-and-go docking, and readability. At the same time, the mobile form factor allows for key scenarios not available on a desktop computer. Microsoft Windows Vista , formerly Windows code name "Longhorn," makes advances against all these challenges and is simple for application developers to target.
Auxiliary Display : Mobile computer users do not always want to gain access to the main display of their personal computer, yet the computer contains a lot of important information that users often want to get to quickly. To address this, Windows Vista introduces the auxiliary display. Auxiliary displays give the user quick access to useful information such as calendar appointments and the latest e-mail message even when the computer is in standby or hibernating, media playback control when the computer is off, and other application notifications.
Creating new applications or extending existing applications to auxiliary displays is straightforward; applications simply register themselves with the auxiliary display subsystem during installation. The auxiliary display subsystem takes care of device management. An application might even cache data on devices that support it to allow offline access or might provide its content as the user requests it.
Here are some key points to understand the auxiliary display subsystem:
Windows Vista introduces several new features for improved power management, including a redesigned and enhanced kernel power policy manager. The enhanced power policy manager provides a common framework for applications and devices to receive notifications of important system power events. For instance, including the user's current power preferences and notifications of when the remaining battery capacity crosses specific thresholds is such an event. The application can also use the power policy manager to handle the storage and retrieval of its application-specific power settings with the current user system power policy. When a power transition occurs that affects a power setting that the application has registered for, the power manager will notify the application with an updated value for the power setting. The power manager can handle all the overhead of storing, managing, and retrieving power settings for an application. This can significantly reduce the work required by developers to support intelligent and efficient power-aware behavior.
Most importantly, developers should focus on their applications' proper use of the system power broadcast (WM_POWERBROADCAST) messages. When the system is about to go to sleep, Windows broadcasts a sleep query message along with a flag indicating whether applications are allowed to display UI. Regardless of the state of the "UI allowed" flag, applications should make every effort to prepare for sleep without querying or notifying the user.
Network Location Awareness : In today's world of wireless access and mobile devices, application developers can no longer assume that the network is always present or that there is only a single path to a resource. Even though TCP has complex algorithms to ensure guaranteed delivery, it cannot overcome the transient nature of the mobile user's network environment. Both wireless networking and grab-and-go docking mean network connections and external hard disks can become disconnected without warning.
In Windows Vista, applications can now do a better job tailoring the user experience to the connected status of the system by having a better understanding of the connected state made through querying the new Network Location API 2 (NLA2). NLA2 provides a single place where an application can get all the network parameters for a computer and can inform the application of changes to the parameters and network context information.
Synchronization Manager : The Synchronization Manager provides a centralized, standard technology for synchronizing files for offline use on a mobile computer or a computer connected to a local area network (LAN). Together with the connectivity functions, notifications (System Event Notification Service), and client-side caching, the Synchronization Manager provides an infrastructure to support mobile computing. Instead of each application implementing its own technology to cache and synchronize network resources for local use, the operating system provides an integrated model that all applications can use. Files are synchronized independent of the protocol. For example, an e-mail program can transfer its messages using Simple Mail Transfer Protocol (SMTP), Network News Transfer Protocol (NNTP), or Post Office Protocol 3 (POP3), while a browser can use HTTP and a database can use Remote Procedure Call (RPC). Developers can use the common interface to the Synchronization Manager in their applications to synchronize files between the user's local computer and network storage.
SyncMgr also includes a programming interface so that applications can register to use synchronization features, can process errors, and can receive progress information and notifications during the synchronization process.
In Windows Vista, a new common and consistent user interface (UI) manages synchronization with other devices and data sources. Developers can plug-in to this UI (instead of creating unique custom solutions) to provide a consistent user experience for synchronizing with their devices. There are additional APIs that extend the context menus in the Synchronization Manager.
Tablet PC : Windows Vista includes many advances for Tablet PC developers. Chief among these are Ink Analysis and integration with the Windows Presentation Foundation, formerly code name "Avalon". Probably the biggest advance, however, is the ubiquity of Tablet PC features. To date, developers have had a difficult time with the Tablet PC technology redistribution problem. With Windows Vista, however, Tablet PC technologies are ubiquitous across all Windows Vista editions.
To simplify the developer experience, Windows Vista fuses the APIs into a single new API called Ink Analysis.
Windows Presentation Foundation Integration : Digital ink collection and rendering, features traditionally available only on the Tablet PC, have been incorporated into Windows Presentation Foundation as first-class members of the framework. No separate runtime is required to support basic ink functionality in your applications.
From the technical improvements, we understand that Microsoft has done a lot of research to determine exactly what the problems were with the previous releases and what users want. From the features, we can see that Microsoft's main goal is to make a new operating system with the simplicity of the previous Windows release, Windows XP, but with the security of operating systems like unix, and the visual effects of Macintosh OS X. Well, that's a hell of a mix and if they've done it right, this release will be a revolution on previous releases.
The first thing that will probably concern most users is compatibility, because as we have seen, both the driver model and the installation procedure has changed. We will see how Microsoft is going to support applications written for previous releases.
In the next update, which will be released in a few days, we will further investigate if the current beta version actually offers the features that Microsoft promises us and hopefully, we will get to enjoy some of the beautiful visual improvements.
*29/08/2005 Updated.Click here for the rest of the article.