TAPI version 1.4 added a number of APIs, messages, constants, and structure elements to the 1.3 specification. TAPI 1.4 is a piece of Windows 95 – it is always present and cannot be separated out for separate distribution. TAPI 1.4 only supports 16-bit TSPs. However, it does allow 32-bit applications to be developed without having to worry about Win16 limitations.
The Win32 TAPI and TSPI headers in the Platform SDK are used to develop both TAPI 1.4 and TAPI 2.0 applications. While there were not many changes to the structures between these two specifications, there were changes to the APIs (specifically, Unicode support) that make it very important to note that the headers compile differently, depending on the TAPI_CURRENT_VERSION constant. For an application to work correctly on Windows 95, it must define this variable. For example:
#define TAPI_CURRENT_VERSION 0x00010004
#include <tapi.h>
Note TAPI_CURRENT_VERSION should be defined for all TAPI applications. While it is not strictly necessary for TAPI 2.0 development, future changes could occur to require this.
TAPI 1.4 system binaries (as part of Windows 95) support both TAPI 1.3 and 1.4 applications and service providers. While applications can be either Win16 or Win32, TSPs can only be Win16 DLLs.