lineTranslateAddress 函数 (tapi.h)
lineTranslateAddress 函数将指定的地址转换为另一种格式。
语法
LONG lineTranslateAddress(
HLINEAPP hLineApp,
DWORD dwDeviceID,
DWORD dwAPIVersion,
LPCSTR lpszAddressIn,
DWORD dwCard,
DWORD dwTranslateOptions,
LPLINETRANSLATEOUTPUT lpTranslateOutput
);
参数
hLineApp
lineInitializeEx 返回的句柄。 如果 TAPI 2.x 应用程序尚未调用 lineInitializeEx 函数,则可以将此参数设置为 NULL。 TAPI 1.4 应用程序仍必须首先调用 lineInitialize 。
dwDeviceID
要拨打呼叫的线路设备的设备标识符,以便不同线路上的拨号过程的变化可以应用于转换过程。
dwAPIVersion
应用程序支持的最高 TAPI 版本 (不一定是 lineNegotiateAPIVersion 在某些特定线路设备上) 协商的值。
lpszAddressIn
指向 以 null 结尾的字符串的指针,该字符串包含要提取以供转换的信息的地址。 必须采用规范地址格式,或任意可拨号数字字符串 (非规范) 。 此参数不得为 NULL。 如果 AddressIn 包含子地址或名称字段,或者其他地址与第一个地址之间用 CR 和 LF 字符分隔,则仅转换第一个地址。
dwCard
用于拨号的信用卡。 仅当在 dwTranslateOptions 中设置了 CARDOVERRIDE 位时,此参数才有效。 此参数指定从 lineTranslateCaps) 获取的注册表 ([Cards] 部分中的 Card 项的永久标识符,而不是在 CurrentLocation 的定义中指定的 PreferredCardID。 它不会导致修改注册表中当前 Location 条目的 PreferredCardID 参数;重写仅适用于当前转换操作。 如果未在 dwTranslateOptions 中设置 CARDOVERRIDE 位,则忽略此参数。
dwTranslateOptions
在将地址转换为可拨号字符串之前要执行的关联操作。 此参数使用 LINETRANSLATEOPTION_常量之一。
如果已设置LINETRANSLATEOPTION_CANCELCALLWAITING位,则还建议在 LINECALLPARAMS 结构的 dwCallParamFlags 成员中设置LINECALLPARAMFLAGS_SECURE位, (通过 lpCallParams 参数) 传递到 lineMakeCall。 这可以防止线路设备使用可拨号数字来抑制呼叫中断。
lpTranslateOutput
指向应用程序分配的内存区域的指针,该内存区域包含转换操作的输出,类型为 LINETRANSLATEOUTPUT。 在调用 lineTranslateAddress 之前,应用程序必须设置此结构的 dwTotalSize 成员,以指示 TAPI 可用于返回信息的内存量。
返回值
如果请求成功,则返回零;如果发生错误,则返回负错误号。 可能的返回值为:
LINEERR_BADDEVICEID、LINEERR_INVALPOINTER、LINEERR_INCOMPATIBLEAPIVERSION、LINEERR_NODRIVER、LINEERR_INIFILECORRUPT、LINEERR_NOMEM、LINEERR_INVALADDRESS、LINEERR_OPERATIONFAILED、LINEERR_INVALAPPHANDLE、LINEERR_RESOURCEUNAVAIL、LINEERR_INVALCARD、LINEERR_STRUCTURETOOSMALL、LINEERR_INVALPARAM。
要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | tapi.h |
Library | Tapi32.lib |
DLL | Tapi32.dll |