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

另请参阅

PHONEEVENT

PHONE_CLOSE

TSPI_phoneClose

TSPI_phoneNegotiateTSPIVersion