Windows 7 RC!

We are finally out of the RC phase and have begun working on the RTM version of Windows 7!  This is a very exciting milestone to have reached, I remember when we got here for Vista.  I actually remember the Vista RC being made out as a bigger deal than RTM was…  Anyways, you can grab the Windows 7 RC from:

http://www.microsoft.com/windows/windows-7/download.aspx

This build will be valid through 2010, so you will have plenty of time to get a feel for 7. 

Along with the RC build of Windows 7, you can also grab the Windows 7 RC SDK from here:
http://www.microsoft.com/downloads/details.aspx?FamilyID=6db1f17f-5f1e-4e54-a331-c32285cdde0c&displaylang=en

I’m really excited about the changes in Windows Touch that we are releasing with RC.  The first major change I can think of is the reduction of the number of Windows Touch system messages from 3 to 1.  This is very convenient because it simplifies WndProc functions.  Consider the following examples to get a feel for the contrast. The following code  example the first sample is from the older SDK.

  LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam){
    int wmId, wmEvent;
    PAINTSTRUCT ps;
    HDC hdc;

    switch (message){
        case WM_TOUCHDOWN:
          /* insert handler code here to do something with the message */
          break;
        case WM_TOUCHMOVE:
          /* insert handler code here to do something with the message */
          break;
        case WM_TOUCHUP:
          /* insert handler code here to do something with the message */
          break;
    }
  }

Now, contrast that with the new message.

  LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam){
    int wmId, wmEvent;
    PAINTSTRUCT ps;
    HDC hdc;

    switch (message){
        case WM_TOUCH:
          /* insert handler code here to do something with the message */
          return DefWindowProc(hWnd, WM_TOUCH, wParam, lParam);
          break;
    }
  }

You now need to write less repetitive code which means fewer places where bugs can show up and ultimately means fewer bugs.

I have been working on tightening the documentation up a bit as well.  There are some more compelling examples such as the Multiple Touch Points example, Ian Mendiola’s Manipulation and Inertia sample, and the Single Finger Panning Experience update.  The documentation has tons of information for fast tracking new developers to Windows Touch programming.  The FAQ / Troubleshooting section should help with many of the developer gotchas.  The section Choosing the Right Approach to Windows Touch should be a great place for adopters to get started.  I feel the documentation and the SDK has come a long ways since the Beta.  I can only dream that we can deliver as much for RTM!

  1. May 20th, 2009