Frequently Asked Questions about Developing Software for the Tablet PC
Microsoft® Windows® XP Tablet PC Edition
Summary: Find answers to common questions about the Tablet PC development environment. (5 printed pages)
What Are the Minimum Requirements for Developing Tablet PC Software?
What Are the Requirements for an Optimal Development Experience?
Can I Develop Tablet PC Software Without a Tablet PC?
What Are the Disadvantages of Developing Tablet PC Software on Operating Systems Other Than Windows XP Tablet PC Edition?
How Can I Install the Windows XP Tablet PC Edition Operating System on My Desktop?
Where Can I Go for More Information?
You must have Microsoft® Windows® 2000 Service Pack 4 or later to write software for a Tablet PC. The Windows® XP Tablet PC Edition Development Kit can run on any computer running Windows® 2000, Windows® XP Professional, Windows® XP Tablet PC Edition, or Windows Server™ 2003.
You can use any computer that can run Windows 2000 or later.
You can use any development software that can develop Component Object Model (COM) or .NET applications.
We recommend that you develop Tablet PC software on a computer running Windows XP Tablet PC Edition. For more information, see the following sections of this FAQ:
- What are the disadvantages of developing Tablet PC software on operating systems other than Windows XP Tablet PC Edition?
- How can I install the Windows XP Tablet PC Edition operating system on my desktop?
You need a Tablet PC or desktop that has an external Human Interface Device (HID) digitizer. Although using Windows XP Tablet PC Edition is not required for developing software for a Tablet PC, it is recommended.
The other required hardware is an electromagnetic digitizer that is an HID device. This type of device is a piece of USB hardware for which the manufacturer has written a driver. The driver must follow the HID standard.
To create a Tablet PC application, you must install the Windows XP Tablet PC Edition Development Kit on the developer's computer. In addition, we recommend that you use Microsoft Visual Studio® .NET 2003 because the Windows XP Tablet PC Edition Development Kit works best in that environment.
Yes. Be aware of the following issues:
- If you develop software using an operating system other than Windows XP Tablet PC Edition, all of the available platform components will not be available. See the following section for more detail.
- Your users will experience some differences when they use your application on a Tablet PC. These differences include:
- Screen behavior.
- A rotating display that can change while your application is running.
- A display resolution that can have unusual dimensions, such as 768 x 1024.
- High dots per inch (dpi) screens, including screens with resolutions greater than 120 dpi.
- Pen behavior that is difficult to duplicate with a mouse.
- Pressure sensitivity using a pen.
- Inverted pens, possibly for erasing.
- Gestures, such as the backspace or scratch-out gesture.
- Users of your application may not have a keyboard.
- Users may rely on text entry by using Tablet PC Input Panel.
- Command keys may not be easily available (such as Control+C).
Because these issues may constitute real bugs or usability issues for users, we recommend that you test your application thoroughly on the Windows XP Tablet PC Edition operating system and also on at least one Tablet PC.
What Other Hardware Do I Need if I'm Developing Software Without a Tablet PC?
No other hardware is required for you to develop Tablet PC software; you can use a mouse for development purposes. As previously mentioned, you will benefit by having a HID digitizer to collect ink.
What Are the Benefits of Having a Digitizer Available for Development?
All Tablet PCs have an electromagnetic digitizer located behind the LCD, which enables the user to use a stylus to engage the computer. When developing software for the Tablet PC, you want to replicate this environment as closely as possible. There are key differences between using a mouse and using a digitizer, both in form and function. The major differences include:
- A digitizer runs at much a higher resolution than a mouse.
The information that comes from a digitizer is much more granular. Most digitizers have resolutions in the 10000 x 10000 range, which is 10 times greater than the resolution of a mouse. The higher resolution allows the ink to look much smoother, because more data results in better Bezier smoothing and more accurate anti-aliasing of the ink that is collected. In addition, the handwriting recognizers on a Tablet PC have more information to use for perform recognition, which improves recognition accuracy.
- A digitizer runs at a much faster throughput than a mouse.
Digitizers run at throughput rates above 120 samples per second—approximately four times faster than the average mouse. Combined with the higher resolution, you can see 10 times as much data, four times as often by using a digitizer. The digitizer's increased throughput also increases the smoothness of the ink and improves recognition accuracy.
- A digitizer can provide more information about the users' actions.
Digitizers also can provide much more information about the users' actions. A mouse can provide only X and Y coordinates. A digitizer can provide up to 17 properties that the Tablet PC platform API supports. These properties include Pressure, Angle, and Rotation. With these additional properties, you can develop many new and interesting features.
- A digitizer can be used with more than one stylus and provide unique information about each stylus.
Because a digitizer can have more than one stylus, a user can use different pens on the same ink collection surface. The Tablet PC Platform API can uniquely identify each pen in an instance of an application. This means that you can mark each pen to behave differently (for example, one red, one blue, and another green).
Also, each physical pen can have either one or two pen tips. The digitizer can detect if the physical pen is inverted or normal. This capability enables back-of-pen erasing and potentially other types of behavior.
What Are the Disadvantages of Developing Tablet PC Software on Operating Systems Other than Windows XP Tablet PC Edition?
There are a few key disadvantages of developing Tablet PC software on an operating system other than Windows XP Tablet PC Edition.
- Other operating systems do not ship with language and gesture recognizers. You need to install the Windows XP Tablet PC 2005 Recognizer Pack in order for you to develop against the handwriting or gesture recognizers that ship with Windows XP Tablet PC Edition. For more information about the Windows XP Tablet PC 2005 Recognizer Pack and how to use it, see Developing Tablet PC Software Using the Windows XP Tablet PC Edition 2005 Recognition Pack.
- Other operating systems do not support Tablet PC Input Panel. This means that you cannot use Input Panel with your application on your development system.
- Other operating systems do not have other built in Tablet PC applications, such as Windows Journal. These applications are useful to understand interoperability and user interface design.
The Windows XP Tablet PC Edition is not available as a stand-alone installation for purchase. It is available only one of two ways:
- As part of an Original Equipment Manufacturer (OEM) image on a Tablet PC.
- As part of an MSDN subscription.
Developers who want to install Windows XP Tablet PC Edition on a development computer need to be MSDN subscribers and use the developer-only installation from their subscription.
Can I Upgrade to Windows XP Tablet PC Edition?
No, you cannot upgrade an existing system to the Tablet PC Edition. You must do a full, clean installation.
If I Install, Do I Need to Reinstall All of My Applications?
As with all clean installations, you must install all of your applications and settings after the installation is completed.
Can I Install Windows XP Tablet PC Edition on My Desktop Without Wiping the Existing OS Image?
Yes, as with Windows XP Professional, you can install Tablet PC Edition in a different location, such as a different partition or directory, and when you start the machine, you can select which operating system starts.
There are many places that you can go for further assistance. See the following resources for more information.