A Windows SNA standard was created to provide one common API to port applications from various operating environments to Microsoft® Windows NT®, Windows® 95, and Windows® version 3.x. As a direct result of this work, Windows CPI-C was developed. The CPI-C calls and information presented in this guide represent an evolving Windows CPI-C that is composed of CPI-C version 1.2 and a set of Windows extensions that allow for multiple applications and asynchronous call completion.
CPI-C version 1.0 was first introduced to provide a means by which two applications could speak and listen to each other; in other words, have a conversation. A conversation is the logical connection between two programs that allows the programs to communicate with each other. Programs using CPI-C converse with each other by making program calls. These calls are used to establish the full characteristics of the conversation, to exchange data, and to control the information flow between the two programs.
CPI-C version 1.1 was extended to include four new areas of function:
Built upon CPI-C version 1.1, X/Open CPI-C provided:
CPI-C version 1.2 consolidated CPI-C version 1.1 and X/Open CPI-C by providing all the functions described above. Windows CPI-C adds to this functionality by providing a set of extensions for asynchronous communication in addition to the full complement of supported features in CPI-C version 1.2 (with the exception of resource recovery).
The use of the Windows CPI-C interface on Windows NT, Windows 95, and OS/2 will cause additional threads to be created within the calling process. These other threads perform interprocess communication with the SNA Server service over the LAN interface that the client is configured to use (TCP/IP, IPX/SPX, or named pipes, for example).
If an application using Windows CPI-C is running on Windows NT, stopping the SNABASE service will cause the application to be unloaded from memory.