I’ve been digging deeper into Windows 7 development and all of the things that you can do with it (around jumplists, multitouch, sensors and location, etc.), and I’ve compiled a list of resources for others interested in Windows client development. I’ll try to keep this list updated with new resources as I find them.
SDKs and Libraries
Windows API CodePack - must-have library of various Windows APIs, which are not included in the .NET Framework
The SDKs provide code samples, headers, libraries, tools, VC++ 2010 compiler/CRT, and other resources to help you develop Windows applications using both native and managed technologies. This SDK supports developing on and for Windows 7, Windows Server 2008 R2, Windows Vista, Windows XP, and Windows Server 2008, and targets .NET Framework version 4 and down level versions to 2.0.
- Microsoft Windows SDK for Windows 7 and .NET Framework 3.5 SP1
- Microsoft Windows SDK for Windows 7 and .NET Framework 4.0
Develop for Windows – portal with links to sample code, videos, forums, whitepapers, etc.
Windows Developer Center on MSDN – portal with links to documentation, learning resources, downloads, an application gallery, support, and forums.
Ready Set 7 – Windows 7 readiness for both hardware and software developers
Hands-on Labs, Workshops, Tutorials, and Training
Windows 7 Training Kit for Developers – highly-recommended resource of presentations, hands-on labs, whitepapers, and videos
Windows 7 Online Training – online hands-on labs covering many different aspects of Windows 7 development
User Experience and Design
Windows User Experience Interaction Guidelines (UX Guide) – great PDF guide to answer your UX design questions and make your job easier developing applications for Windows 7
Project Hilo – series of articles and sample applications that demonstrate how you can leverage the power of Windows 7, Visual Studio 2010, and Visual C++ to build high performance, rich, responsive client applications in native code
Hilo Articles – series of articles on how to develop for Windows 7 using C++
Windows Developers – official channel for Windows Developer User Education
Project Hilo – native code development
Webcasts and Screencasts
Introducing Windows 7 for Developers by Yochay Kiriaty, Laurence Moroney, Sasha Goldshtein, and Alon Fliess
Native code – this is the place to ask questions about native code development on Windows. There is a forum for general Windows questions as well as many more specific forums (UI, audio and video, etc.).
Managed code – this is the place to ask questions about WPF, Windows Forms apps, etc.
I also have information on forums specific to Touch, Sensors, etc. listed in the appropriate sections below.
Upgrading to Windows 7
Windows Application Compatibility Developer Center – support, whitepapers, videos, tools, blogs, and forums
“Images.Show” Reference Application (XP2Win7 Project) – “educational” project to show developers how to “light up” existing Windows applications using built-in Windows 7 technologies without sacrificing backward compatibility for existing Windows XP customers
Multitouch Drivers – install these drivers to enable multitouch on your multitouch hardware
Touch Pack for Windows 7 – six cool applications that were designed for multitouch
Touch Samples in the Windows SDK – this page gives information on all of the touch samples in the Window SDK (download link above)
Touch Developer Center – touch-specific portal with videos, articles, labs, and sample applications
Microsoft Surface Toolkit for Windows Touch Beta - includes the advanced Microsoft Surface controls, templates, and samples to easily create applications that are optimized for multi-touch interaction and that run on Windows Touch PCs. With the .NET Framework 4.0, Windows Presentation Framework 4.0 (WPF), and this toolkit, Windows Touch developers can quickly and consistently create advanced multi-touch applications for Windows Touch PCs. This toolkit also provides a jump-start for Surface application developers to prepare for the next version of Microsoft Surface.
Touch Forums – this is the place to ask your touch-specific questions
Sensors and Location Platform
If your machine doesn’t have built-in sensors, you can use a sensor board that connects to your machine via USB. I have the FreeScale one at http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=JMBADGE&tab=Buy_Parametric_Tab&fromSearch=false. There is a great blog post on working with that board at http://blogs.msdn.com/gavingear/archive/2009/05/08/how-to-get-new-freescale-sensor-boards-to-work-on-windows-7.aspx.
Sensor and Location Developer Center – portal of videos, articles, hands-on labs, sample applications, and documentation specific to the Sensor and Location Platform.
Sensors and Location Code Hub – portal of code samples
Sensor Development Kit for Windows 7 – board firmware, drivers, and diagnostic tool for testing the Sensor Development Kit board
Windows 7 Sensor and Location .NET Interop Sample Library – abstraction of the native Sensor and Location API and strongly typed objects for specific sensors for its Sensor Data Report
Enhanced Default Location Provider (eDLP) – really useful tool that enables you to click on a map to set the location reported by the Location API. This GUI-based tool for setting the computer’s geographic and civic address is great for testing!
Sensor Diagnostic Tool – provides the states, data, and events of all sensors as well as the Location API in real time. Great debugging tool.
Using Windows 7 to Monitor a Motion Sensor – describes how to build a simple motion sensor, a Sensor device driver, and a Sensor application that you can use to observe real-time sensor data in Windows 7
Whitepaper: Implementing Light-Aware UI Using the Windows Sensor and Location Platform - covers the use of ambient light sensor data, and how user interface features and program content can be optimized for many lighting conditions
Sensor and Location Forums – this is the place to ask questions around the Sensor and Location APIs
Virtual Light Sensor – this is available as part of the Windows 7 SDK (download links near the top of this post). By default, it will be installed to "C:\Program Files\Microsoft SDKs\Windows\v7.0\Bin\x64\VirtualLightSensor.exe".
Microsoft Ribbon for WPF – managed implementation of the ribbon for WPF. A few samples are also included to demonstrate the available Ribbon features.
Windows 7 Ribbon Explorer – application which takes a ribbon markup (XML) and shows the resulting ribbon. Great tool when learning to create ribbon markup.