Index   Commented   Search   About

Overview of HPENDATA

Windows allocates the HPENDATA object with an internal call to the Windows GlobalAlloc function. Other Windows data objects are allocated from the USER or GDI heaps, but the large size of an HPENDATA object necessitates allocation from the system global heap.

Windows imposes a 64K limit on the size of each HPENDATA object. At a report rate of 120 samples per second, at 4 bytes per data point, plus some overhead data structures, minus the time the pen is not in contact with the surface of the tablet, a single HPENDATA object can contain the data representing roughly two and one-half minutes of pen activity.

The following section describes the internal structure of an HPENDATA memory block. Though not recommended, your application can use this information to read ink data if necessary. However, the internal structure of the HPENDATA block may change in future versions of Windows. Therefore, applications should always use standard API functions to read from an HPENDATA object.

Important Under no circumstances should an application write directly into an HPENDATA block. The Pen API provides functions for modifying ink data safely. Directly changing point data in the block can cause hazardous side effects.

Related Links

Software for Delphi and C++ Builder developers
Software for Visual Studio .NET developers
Software for Visual Basic 6 developers
Delphi Tips&Tricks
MegaDetailed.NET

More Online Helps

Win32 Programmer's Reference (win32.hlp)
Win32 Multimedia Programmer's Reference (mmedia.hlp)
OLE Programmer's Reference (ole.hlp)
Microsoft Windows Sockets 2 Reference (sock2.hlp)
Microsoft Windows Telephony API (TAPI) Programmer's Reference (tapi.hlp)
Unix Manual Pages

Free Tech Secrets ;) Copyright © 2008 Free Tect Secrets ;) greatis just4fun network just4fun