Rules Drafted for Windows 8 Applications

Microsoft Product Roadmaps

An all-in-one-place software version product roadmap resource that summarizes the current and future versions of 100+ Microsoft enterprise and developer technologies. Our product roadmaps will give you the forward looking information you need to efficiently plan projects, schedule migrations and budget purchases.

Rules Drafted for Windows 8 Applications
Tuesday, 17 January 2012
ShareShare on LinkedIn

Application Certification

The Windows application certification programs serve three basic goals:

  • Increase the perceived value of Windows by having a large catalog of compatible applications
  • Encourage developers to build applications that take advantage of specific Windows features that Microsoft wants to promote
  • Help customers identify programs that run well, on the latest version of Windows.

Metro-Style Applications

The preliminary Windows 8 application certification requirements must be met for all Metro-style applications before Microsoft will list them in the Windows Store, the company's Web-based application purchasing venue. Metro defines both a new user interface and a new style of application that employs the Windows 8 Windows Runtime (WinRT) APIs designed to work better with mobile devices and touch-enabled PCs. Metro applications, which will be delivered from the Windows Store, are described as applications designed to share information with other applications, and to be "fast and fluid" and responsive.

The requirements define the level of functionality a Metro-style application must have, as well as policies for applications that display advertisements, and content restrictions for a global audience (including the appropriateness of the content for the age of users).

A key requirement for Metro-style applications falls under the heading of predictable behavior and states that Metro-style applications must not link to, depend on, or otherwise make use of APIs or Windows OS services outside of a small subset of Win32 and COM APIs that support key scenarios not covered by WinRT, HTML/CSS, or other supported languages or standards. For example, Metro-style applications cannot access the Registry, but instead should use a WinRT API for local settings. However, the Win32 lock file exclusive (LockFileEx) API is available for a Metro-style application to lock a specified file for exclusive access by the calling process.

Desktop Applications

The Windows 8 Desktop Application (App) Certification Program replaces and updates the "Compatible with Windows 7" Program. This certification will apply to conventional Windows applications, not Metro-style applications. In addition, the Windows App Certification Kit, which is used to validate compliance with these requirements, replaces the Windows Software Logo Kit used for validation under the Windows 7 Software Logo Program. The certification kit is included in the Windows SDK and the Windows SDK for Metro-style Apps.

For an application to qualify for Windows 8 Desktop App Certification, it must meet all the technical requirements listed in the documentation in addition to the following criteria:

  • It must be a stand-alone app
  • It must run on a local Windows 8 system
  • It can be a client component of a certified Windows Server app
  • It must be code and feature complete.

The requirements focus on distinct areas such as security, resilience, and installation. For example, the app must support User Account Control, which manages the privileges an application has while executing; the application must not veto a system shutdown request; the application must install files into the correct folders; and installation must be reversible.

Some requirements are new. For example, Windows 8 applications on all architectures of Windows can no longer have any dependency on the Visual Basic 6 runtime. Based on this requirement, it would appear that Visual Basic 6will not be supported in Windows 8.

Changes Ahead

Although there will be changes to the requirements, there will likely continue to be two different certifications simply because applications running in desktop mode operate differently than Metro-style applications. Although desktop applications will be available from the Windows Store, they do not need to pass the Metro application certification because desktop applications, while listed in the Windows Store, will not be delivered from the Windows Store. For example, a user browsing in the Windows Store for a traditional desktop application will see the application logo, icon, and information, but a link will take the customer straight to the application vendor's Web site for immediate purchase and desktop application download.

Availability and Resources

The certification requirements for Windows 8 desktop apps are available at msdn.microsoft.com/library/windows/desktop/hh749939.

The certification requirements for Windows apps (Metro-style) are available at msdn.microsoft.com/en-us/library/windows/apps/hh694083.

The Win32 and COM APIs for Metro-style apps are documented at msdn.microsoft.com/library/windows/apps/E98AA8C4-4BE3-41A7-8572-823F6E3E84C6.aspx.