WinCPICStartup

WinCPICStartup 函数允许应用程序指定 Microsoft Windows Common Programming Interface for Communications (CPI-C) 所需的版本,并检索特定 Windows CPI-C 实现的详细信息。 在发出任何进一步的 Windows CPI-C 调用之前,应用程序必须调用此函数,以便向 Windows CPI-C 实现注册自身。

语法

  
        INT WINAPI WinCPICStartup(   
WORDwVersionRequired,  
    LPWCPICDATAlpwcpicdata);  

参数

wVersionRequired
指定所需的 Windows CPI-C 支持版本。 高阶字节指定次要版本 (修订版) 数字。 低序字节指定主版本号。

lpwcpicdata
指向 CPI-C 数据结构的指针。 CPICDATA 结构定义如下:

typedef struct {  
....WORD wVersion;  
    char szDescription[WCPICDESCRIPTION_LEN+1];  
}  CPICDATA, FAR * LPWCPICDATA;  

WCPIDESCRIPTION 定义为 127,结构成员如下所示:

wVersion

支持的 Windows CPI-C 版本。 高阶字节指定次要版本 (修订版) 数字。 低序字节指定主版本号。

szDescription

描述支持的 CPI-C 版本的说明字符串。

返回值

返回值指定应用程序是否已成功注册,以及 Windows CPI-C 实现是否可以支持指定的版本号。 如果值为零,则表示已成功注册。 否则,返回值为以下值之一:

WCPICSYSNOTRERADY
基础网络系统尚未准备好进行网络通信。

WCPICVERNOTSUPPORTED
此特定 Windows CPI-C 实现未提供请求的 Windows CPI-C 支持版本。

WCPICINVALID
此动态链接库不支持应用程序指定的 Windows CPI-C 版本, (DLL) 。

注解

为了支持将来的 Windows CPI-C 实现和可能与 Windows CPI-C 版本 1.0 功能差异的应用程序,在 WinCPICStartup 中进行了协商。 应用程序将传递给 WinCPICStartup 它可以使用的 Windows CPI-C 版本。 如果此版本低于 Windows CPI-C DLL 支持的最低版本,则 DLL 无法支持该应用程序, WinCPICStartup 调用将失败。 但是,如果版本不低,则调用成功并返回 DLL 支持的最高版本的 Windows CPI-C。 如果此版本低于应用程序支持的最低版本,则应用程序初始化失败或尝试在系统上查找另一个 Windows CPI-C DLL。

此协商允许 Windows CPI-C DLL 和 Windows CPI-C 应用程序支持一系列 Windows CPI-C 版本。 如果版本中存在任何重叠,应用程序可以成功使用 DLL。 下表说明了 WinCPICStartup 如何与不同的应用程序和 DLL 版本结合使用。

应用程序版本 DLL 版本 To WinCPICStartup 从 WinCPICStartup 结果
1.0 1.0 1.0 1.0 使用 1.0
1.0、2.0 1.0 2.0 1.0 使用 1.0
1.0 1.0、2.0 1.0 2.0 使用 1.0
1.0 2.0, 3.0 1.0 WCPICINVALID 失败
2.0, 3.0 1.0 3.0 1.0 应用失败
1.0, 2.0, 3.0 1.0, 2.0, 3.0 3.0 3.0 使用 3.0

定义如下的 WHLLDATA 结构中介绍了实际 Windows CPI-C 实现的详细信息:

typedef struct tagWCPICDATA { WORD wVersion;  
            char szDescription[WHLLDESCRIPTION_LEN+1];  
            } WCPICDATA, FAR *LPWCPICDATA;  

在进行最后一次 Windows CPI-C 调用后,应用程序应调用 WinCPICCleanup例程。

每个 Windows CPI-C 实现必须在发出任何其他 Windows CPI-C 调用之前进行 WinCPICStartup 调用。