lineTranslateDialog

This function displays an application-modal dialog box that enables the user to change the current location, adjust location and calling card parameters, and see the effect on a phone number about to be dialed.  

At a Glance

Header file: Tapi.h
Windows CE versions: 1.0 and later

Syntax

LONG lineTranslateDialog (HLINEAPP hLineApp, DWORD dwDeviceID, DWORD dwAPIVersion, HWND hwndOwner, LPCTSTR lpszAddressIn);

Parameters

hLineApp

[in] Application handle returned by lineInitialize. If you set hLineApp to NULL, this function fails and returns LINERR_INVALAPPHANDLE.

dwDeviceID

[in] Specifies the device identifier for the line device upon which the call is intended to be dialed, so that variations in dialing procedures on different lines can be applied to the translation process.

dwAPIVersion

[in] Specifies the highest version of TAPI supported by the application (not necessarily the value negotiated by lineNegotiateAPIVersion on the line device indicated by dwDeviceID).

hwndOwner

[in] Handle to a window to which the dialog box is to be attached. Can be a NULL value to indicate that any window created during the function should have no owner window.

lpszAddressIn

[in] Pointer to a null-terminated string that contains a phone number that is used, in the lower portion of the dialog box, to show the effect of the user's changes on the location parameters. The number must be in canonical format; if noncanonical, the phone number portion of the dialog box is not displayed. This pointer can be left NULL, in which case the phone number portion of the dialog box is not displayed. If the lpszAddressIn parameter contains a subaddress or name field, or additional addresses separated from the first address by ASCII CR and LF characters, only the first address is used in the dialog box.

Return Values

Zero indicates success. A negative error number indicates that an error occurred. Possible error values are as follows:

LINEERR_BADDEVICEID LINEERR_INVALPARAM
LINEERR_INCOMPATIBLEAPIVERSION LINEERR_INVALPOINTER
LINEERR_INIFILECORRUPT LINEERR_NODRIVER
LINEERR_INUSE LINEERR_NOMEM
LINEERR_INVALADDRESS LINEERR_OPERATIONFAILED
LINEERR_INVALAPPHANDLE  

LINEERR_INUSE is returned if the dialog box is already displayed by another application (cannot be open more than once). In these versions, TAPI brings the existing dialog box to the front, and the error indicates that any particulars related to the address passed in by the current application have not been handled, because that address was not processed by the function.

The application must call lineGetTranslateCaps after this function to obtain any changes the user made to the telephony address translation parameters, and call lineTranslateAddress to obtain a dialable string based on the user's new selections.

If any function related to address translation (for example, lineGetTranslateCaps or lineTranslateAddress) returns LINEERR_INIFILECORRUPT, the application should call lineTranslateDialog. The lineTranslateDialog function detects the errors and corrects them, and reports the action taken to the user. LINEERR_INIFILECORRUPT is returned the first time any of these functions are used after installation of Windows CE, because the parameters are uninitialized (lineTranslateDialog takes care of initializing them, using the user-specified default country to select the default country code).

See Also

lineGetTranslateCaps, lineInitialize, lineNegotiateAPIVersion, lineTranslateAddress