lineDevSpecific (Compact 2013)
3/26/2014
This function enables service providers to provide access to features not offered by other TAPI functions. The meaning of the extensions are device specific, and taking advantage of these extensions requires the application to be fully aware of them.
Syntax
LONG WINAPI lineDevSpecific(
HLINE hLine,
DWORD dwAddressID,
HCALL hCall,
LPVOID lpParams,
DWORD dwSize
);
Parameters
- hLine
Handle to a line device. This parameter is required.
- dwAddressID
Address identifier on the given line device. An address identifier is permanently associated with an address; the identifier remains constant across operating system upgrades.
- hCall
Handle to a call. This parameter is optional, but if it is specified, the call it represents must belong to the hLine line device. The call state of hCall is device specific.
- lpParams
Pointer to a memory area used to hold a parameter block. The format of this parameter block is device specific and its contents are passed by TAPI to or from the service provider.
- dwSize
Size, in bytes, of the parameter block area.
Return Value
Returns a positive request identifier if the function is completed asynchronously, or a negative error number if an error occurs. The dwParam2 parameter of the corresponding LINE_REPLY message is zero if the function succeeds, or it is a negative error number if an error occurs. The following table shows the return values for this function.
Value |
Description |
---|---|
LINEERR_INVALADDRESSID |
The address identifier is invalid. |
LINEERR_OPERATIONUNAVAIL |
The operation is unavailable. |
LINEERR_INVALCALLHANDLE |
The handle to the call is invalid. |
LINEERR_OPERATIONFAILED |
The operation failed. |
LINEERR_INVALLINEHANDLE |
The handle to the line device is invalid. |
LINEERR_RESOURCEUNAVAIL |
The resources are unavailable. |
LINEERR_INVALPOINTER |
The pointer is invalid. |
LINEERR_UNINITIALIZED |
A parameter is uninitialized. |
LINEERR_NOMEM |
Not enough memory is available. |
Additional return values are device specific.
Remarks
This operation is part of the Extended Telephony services. It provides access to a device-specific feature without defining its meaning. This operation is only available if the application has successfully negotiated a device-specific extension version.
This function provides a generic parameter profile. The interpretation of the parameter structure is device specific. Whether dwAddressID and/or hCall are expected to be valid is device specific. If specified, they must belong to hLine. Indications and replies sent back the application that are device specific should use the LINE_DEVSPECIFIC message.
A service provider can provide access to device-specific functions by defining parameters for use with this function. Applications that want to make use of these device-specific extensions should consult the device-specific (in this case, vendor-specific) documentation that describes what extensions are defined. Typically, an application that relies on these device-specific extensions is not able to work with other service provider environments.
In Windows Embedded Compact, Unimodem uses lineDevSpecific to support an interface for programmatically modifying a DevConfig.
Requirements
Header |
tapi.h |
Library |
TAPI32.dll |
See Also
Reference
TAPI Line Device Functions
LINE_DEVSPECIFIC (TAPI)
LINE_REPLY