Window Data Types (Compact 2013)

3/28/2014

The data types supported by Windows Embedded Compact are used to define function return values, function and message parameters, and structure members. They define the size and meaning of these elements.

The following table contains the following types: character, integer, Boolean, pointer, and handle. The character, integer, and Boolean types are common to most C compilers. Most of the pointer-type names begin with a prefix of P or LP. Handles refer to a resource that has been loaded into memory.

Data Type

Description

ATOM

Atom.

BOOL

Boolean variable (should be TRUE or FALSE).

BOOLEAN

Boolean variable (should be TRUE or FALSE).

BYTE

Byte (8 bits).

CALLBACK

Calling convention for callback functions.

CHAR

8-bit Windows (ANSI) character.

COLORREF

Red, green, blue (RGB) color value (32 bits). For more information, see COLORREF.

CONST

Variable whose value is to remain constant during execution.

CRITICAL_SECTION

Critical-section object.

DWORD

32-bit unsigned integer.

DWORD_PTR

Unsigned long type for pointer precision. Use when casting a pointer to a long type to perform pointer arithmetic.

DWORD32

32-bit unsigned integer.

DWORD64

64-bit unsigned integer.

FLOAT

Floating-point variable.

HACCEL

Handle to an accelerator table.

HANDLE

Handle to an object.

HBITMAP

Handle to a bitmap.

HBRUSH

Handle to a brush.

HCONV

Not supported.

HCONVLIST

Not supported.

HCURSOR

Handle to a cursor.

HDC

Handle to a device context (DC).

HDDEDATA

Not supported.

HDESK

Not supported.

HDROP

Handle to an internal drop structure.

HDWP

Handle to a deferred window position structure.

HENHMETAFILE

Not supported.

HFILE

Handle to a file opened by OpenFile, not CreateFile.

HFONT

Handle to a font.

HGDIOBJ

Handle to a GDI object.

HGLOBAL

Handle to a global memory block.

HHOOK

Handle to a hook.

HICON

Handle to an icon.

HIMAGELIST

Handle to an image list.

HIMC

Handle to input context.

HINSTANCE

Handle to an instance.

HKEY

Handle to a registry key.

HKL

Input locale identifier.

HLOCAL

Handle to a local memory block.

HMENU

Handle to a menu.

HMETAFILE

Not supported.

HMODULE

Handle to a module. The value is the base address of the module.

HMONITOR

Handle to a display monitor.

HPALETTE

Handle to a palette.

HPEN

Handle to a pen.

HRGN

Handle to a region.

HRSRC

Handle to a resource.

HSZ

Handle to a DDE string.

HWINSTA

Handle to a window station.

HWND

Handle to a window.

INT

32-bit signed integer.

INT_PTR

Signed integral type for pointer precision. Use when casting a pointer to an integer to perform pointer arithmetic.

INT32

32-bit signed integer.

INT64

64-bit signed integer.

LANGID

Language identifier. For more information, see Locale Identifiers.

LCID

Locale identifier. For more information, see Locale Identifiers.

LCTYPE

Locale information type. For more information, see LCTYPE Constants.

LONG

32-bit signed integer.

LONG_PTR

Signed long type for pointer precision. Use when casting a pointer to a long to perform pointer arithmetic.

LONG32

32-bit signed integer.

LONG64

64-bit signed integer.

LONGLONG

64-bit signed integer.

LPARAM

Message parameter.

LPBOOL

Pointer to a BOOL.

LPBYTE

Pointer to a BYTE.

LPCOLORREF

Pointer to a COLORREF value.

LPCRITICAL_SECTION

Pointer to a CRITICAL_SECTION.

LPCSTR

Pointer to a constant null-terminated string of 8-bit Windows (ANSI) characters.

LPCTSTR

An LPCWSTR because Windows Embedded Compact only uses Unicode.

LPCVOID

Pointer to a constant of any type.

LPCWSTR

Pointer to a constant null-terminated string of 16-bit Unicode characters.

LPDWORD

Pointer to a DWORD.

LPHANDLE

Pointer to a HANDLE.

LPINT

Pointer to an INT.

LPLONG

Pointer to a LONG.

LPSTR

Pointer to a null-terminated string of 8-bit Windows (ANSI) characters.

LPTSTR

An LPWSTR because Windows Embedded Compact only uses Unicode.

LPVOID

Pointer to any type.

LPWORD

Pointer to a WORD.

LPWSTR

Pointer to a null-terminated string of 16-bit Unicode characters.

LRESULT

Signed result of message processing.

LUID

Locally unique identifier.

PBOOL

Pointer to a BOOL.

PBOOLEAN

Pointer to a BOOL.

PBYTE

Pointer to a BYTE.

PCHAR

Pointer to a CHAR.

PCRITICAL_SECTION

Pointer to a CRITICAL_SECTION.

PCSTR

Pointer to a constant null-terminated string of 8-bit Windows (ANSI) characters.

PCTSTR

A PCWSTR because Windows Embedded Compact only uses Unicode.

PCWCH

Pointer to a constant WCHAR.

PCWSTR

Pointer to a constant null-terminated string of 16-bit Unicode characters.

PCWSTR

Pointer to a constant null-terminated string of 16-bit Unicode characters.

PDWORD

Pointer to a DWORD.

PDWORD

Pointer to a DWORD.

PFLOAT

Pointer to a FLOAT.

PHANDLE

Pointer to a HANDLE.

PHKEY

Pointer to an HKEY.

PINT

Pointer to an INT.

PLCID

Pointer to an LCID.

PLONG

Pointer to a LONG.

PLUID

Pointer to a LUID.

POINTER_32

32-bit pointer.

POINTER_64

64-bit pointer. This is a sign-extended 32-bit pointer.

PSHORT

Pointer to a SHORT.

PSTR

Pointer to a null-terminated string of 8-bit Windows (ANSI) characters.

PTBYTE

Pointer to a TBYTE.

PTCHAR

Pointer to a TCHAR.

PTSTR

A PWSTR because Windows Embedded Compact only uses Unicode.

PUCHAR

Pointer to a UCHAR.

PUINT

Pointer to a UINT.

PULONG

Pointer to a ULONG.

PUSHORT

Pointer to a USHORT.

PVOID

Pointer to any type.

PWCHAR

Pointer to a WCHAR.

PWORD

Pointer to a WORD.

PWSTR

Pointer to a null-terminated string of 16-bit Unicode characters.

REGSAM

Not supported.

SC_HANDLE

Handle to a service control manager database.

SC_LOCK

Handle to a service control manager database lock.

SERVICE_STATUS_HANDLE

Handle to a service status value.

SHORT

Short integer (16 bits).

SIZE_T

The maximum number of bytes to which a pointer can point. Use for a count that must span the full range of a pointer.

SSIZE_T

Signed SIZE_T.

TBYTE

A WCHAR because Windows Embedded Compact only uses Unicode.

TCHAR

A WCHAR because Windows Embedded Compact only uses Unicode.

UCHAR

Unsigned CHAR.

UINT

Unsigned INT.

UINT_PTR

Unsigned INT_PTR.

UINT32

Unsigned INT32.

UINT64

Unsigned INT64.

ULONG

Unsigned LONG.

ULONG_PTR

Unsigned LONG_PTR.

ULONG32

Unsigned LONG32.

ULONG64

Unsigned LONG64.

ULONGLONG

64-bit unsigned integer.

UNSIGNED

Unsigned attribute.

USHORT

Unsigned SHORT.

VOID

Any type.

WCHAR

16-bit Unicode character.

WINAPI

Calling convention for system functions.

WORD

16-bit unsigned integer.

WPARAM

Message parameter.

See Also

Reference

Window Reference