TSPI_phoneOpen 函数 (tspi.h)
TSPI_phoneOpen 函数打开为其指定了设备标识符的电话设备,返回设备的服务提供商不透明句柄,并保留设备的 TAPI 不透明句柄,以便在后续调用 PHONEEVENT 过程时使用。
语法
LONG TSPIAPI TSPI_phoneOpen(
DWORD dwDeviceID,
HTAPIPHONE htPhone,
LPHDRVPHONE lphdPhone,
DWORD dwTSPIVersion,
PHONEEVENT lpfnEventProc
);
参数
dwDeviceID
要打开的电话设备。
htPhone
电话设备的 TAPI 不透明句柄,用于对 PHONEEVENT 回调过程的后续调用以标识设备。
lphdPhone
指向 HDRVPHONE 的指针,服务提供商在其中为 TAPI 在后续呼叫中使用的电话设备写入其句柄来标识设备。
dwTSPIVersion
通过 TSPI_phoneNegotiateTSPIVersion 协商的 TSPI 版本,服务提供商可以根据该版本进行操作。
lpfnEventProc
指向 TAPI 提供的 PHONEEVENT 回调过程的指针,服务提供商调用该过程来报告手机上的后续事件。
返回值
如果函数成功,则返回零;如果发生错误,则返回错误号。 可能的返回值如下所示:
PHONEERR_ALLOCATED、PHONEERR_NOMEM、PHONEERR_INCOMPATIBLEAPIVERSION、PHONEERR_RESOURCEUNAVAIL、PHONEERR_NODRIVER、PHONEERR_OPERATIONFAILED、PHONEERR_INUSE、PHONEERR_OPERATIONUNAVAIL PHONEERR_INIFILECORRUPT。
注解
打开电话后,TAPI 有权在电话上提出进一步的请求。 电话变为活动状态,因为服务提供商可以报告异步事件,例如挂钩开关更改或按钮按下。 服务提供商保留管理电话所需的任何不可共享资源。 例如,打开通过通信端口和调制解调器访问的电话应会导致打开通信端口,使其不再可供其他应用程序使用。
如果函数成功,TAPI 和服务提供程序将承诺在此打开设备的指定接口版本号下运行。 使用交换的不透明电话句柄标识的后续操作和事件符合该接口版本。 在 TAPI 使用 TSPI_phoneClose 关闭电话或服务提供商报告 PHONE_CLOSE 事件之前,此承诺和 句 柄的有效性一直有效。 如果函数不成功,则不会做出此类承诺,并且句柄无效。
要求
目标平台 | Windows |
标头 | tspi.h |