Partager via


lineClose (Compact 2013)

3/26/2014

This function closes the specified open line device.

Syntax

LONG lineClose(
  HLINE hLine
);

Parameters

  • hLine
    [in] Handle to the open line device to be closed. After the line has been successfully closed, this handle is no longer valid.

Return Value

Zero indicates success. A negative error number indicates that an error occurred. The following table shows the return values for this function.

Value

Description

LINEERR_INVALLINEHANDLE

Invalid handle provided

LINEERR_NOMEM

No memory available

LINEERR_OPERATIONFAILED

The operation failed

LINEERR_OPERATIONUNAVAIL

The operation is unavailable. With code division multiple access (CDMA), this function may terminate all active calls.

CDMA does not provide the necessary functionality to support the following TAPI functions:

Some cellular carriers provide equivalent functionality through the flash feature, which with TAPI 2.2 can be accessed with the lineGenerateDigits function. Because the exact flash sequences are controlled by the cellular providers, the application must be completely aware of the necessary codes implemented by the cellular providers.

LINEERR_RESOURCEUNAVAIL

The resource is unavailable

LINEERR_UNINITIALIZED

The parameter is uninitialized

Remarks

If an application calls lineClose while it still has active calls on the opened line, the application's ownership of these calls is revoked. If the application owns these calls, the calls are dropped as well. It is good programming practice for an application to dispose of the calls it owns on an open line by explicitly relinquishing ownership and/or by dropping these calls prior to closing the line.

If the line was closed successfully, a LINE_LINEDEVSTATE message is sent to all applications monitoring the line status for open/close changes. Outstanding asynchronous replies are suppressed.

Service providers may find it useful or necessary to forcibly reclaim line devices from an application that has the line open. This can be useful to prevent an application from monopolizing the line device. If this happens, a LINE_CLOSE message is sent to the application, specifying the line handle of the line device that was closed.

The lineOpen function allocates resources to the invoking application, and applications can be prevented from opening a line if resources are unavailable. Therefore, an application that only occasionally uses a line device, such as for making outgoing calls, should close the line to free resources and enable other applications to open the line.

Requirements

Header

tapi.h

Library

TAPI32.dll

See Also

Reference

TAPI Line Device Functions
lineOpen
LINE_LINEDEVSTATE (TAPI)
LINE_CLOSE (TAPI)