Platform SDK: DLLs, Processes, and Threads

Generic Thunks

Microsoft® Windows NT® and Windows® 2000 support running 16-bit Windows-based applications using a technology referred to as WOW (Windows on Win32®). Each 16-bit application is run as a thread of a 32-bit process. Microsoft® Windows® 95 and Windows® 98 also support running 16-bit Windows-based applications. They are run as 16-bit processes.

You cannot directly mix 16-bit code and 32-bit code in the same process. You can use IPC mechanisms, such as DDE, RPC, OLE, named pipes, and WM_COPYDATA, to provide communication between 16-bit code and 32-bit code. However, there are occasions when it is necessary to call functions in Win32-based DLLs (including the system DLLs) from a 16-bit application. Generic thunks provide a mechanism for 16-bit applications to call functions in Win32-based DLLs.