This function queries a specified line device to determine its telephony capabilities. The returned data is valid for all addresses on the line device.
At a Glance
Header file: | Tapi.h |
Windows CE versions: | 1.0 and later |
Syntax
LONG lineGetDevCaps(HLINEAPP hLineApp, DWORD dwAPIVersion, DWORD dwDeviceID, DWORD dwExtVersion,
LPLINEDEVCAPS lpLineDevCaps);
Parameters
hLineApp
[in] Handle to the application's registration with TAPI.
dwDeviceID
[in] Specifies the line device to be queried.
dwAPIVersion
[in] Specifies the version number of TAPI to be used. The high-order word contains the major version number; the low-order word contains the minor version number. This number is obtained by lineNegotiateAPIVersion.
dwExtVersion
[in] Not supported; set to zero.
lpLineDevCaps
[out] Pointer to a variable sized structure of type LINEDEVCAPS. Upon successful completion of the request, this structure is filled with line device capabilities data. Prior to calling lineGetDevCaps, the application should set the dwTotalSize member of this structure to indicate the amount of memory available to TAPI for returning data.
Return Values
Zero indicates success. A negative error number indicates that an error occurred. Possible error values are as follows:
LINEERR_BADDEVICEID | LINEERR_NOMEM |
LINEERR_INCOMPATIBLEAPIVERSION | LINEERR_OPERATIONFAILED |
LINEERR_INCOMPATIBLEEXTVERSION | LINEERR_OPERATIONUNAVAIL |
LINEERR_INVALAPPHANDLE | LINEERR_RESOURCEUNAVAIL |
LINEERR_INVALPOINTER | LINEERR_STRUCTURETOOSMALL |
LINEERR_NODEVICE | LINEERR_UNINITIALIZED |
LINEERR_NODRIVER |
Remarks
Before using lineGetDevCaps, the application must negotiate the TAPI version to use, and, if desired, the extension version to use.
The TAPI and extension version numbers are those under which TAPI and the service provider must operate. If version ranges do not overlap, the application, TAPI, or service-provider versions are incompatible and an error is returned.
One of the members in the LINEDEVCAPS structure returned by this function contains the number of addresses assigned to the specified line device. The actual address identifiers used to reference individual addresses vary from zero through one less than the returned number. The capabilities of each address can be different. Use lineGetAddressCaps for each available <dwDeviceID, dwAddressID> combination to determine the exact capabilities of each address.
See Also