lineGetIcon
The lineGetIcon
function allows an application to retrieve a service line device-specific (or
provider-specific) icon for display to the user.
LONG lineGetIcon(
DWORD dwDeviceID, |
|
LPCSTR lpszDeviceClass, |
|
LPHICON lphIcon |
|
); |
|
Parameters
dwDeviceID
The line
device whose icon is requested.
lpszDeviceClass
A pointer to
a NULL-terminated string that identifies a device class name. This device class
allows the application to select a specific sub-icon applicable to that device
class. This parameter is optional and can be left NULL or empty, in which case
the highest-level icon associated with the line device rather than a specified
media stream device would be selected.
lphIcon
A pointer to
a memory location in which the handle to the icon is returned.
Return Values
Returns zero
if the request is successful or a negative error number if an error has
occurred. Possible return values are:
LINEERR_BADDEVICEID,
LINEERR_OPERATIONFAILED, LINEERR_INVALPOINTER, LINEERR_RESOURCEUNAVAIL,
LINEERR_INVALDEVICECLASS, LINEERR_UNINITIALIZED, LINEERR_NOMEM,
LINEERR_NODEVICE.
Remarks
The lineGetIcon
function causes the provider to return a handle (in lphIcon) to an icon
resource (obtained from LoadIcon) that is associated with the specified
line. The icon handle is for a resource associated with the provider. The
application must use CopyIcon if it wishes to reference the icon after
the provider is unloaded, which is unlikely to happen as long as the
application has the line open.
The lpszDeviceClass
parameter allows the provider to return different icons based on the type of
service being referenced by the caller. The permitted strings are the same as
for lineGetID. For example, if the line supports the Comm API, passing
"COMM" as lpszDeviceClass causes the provider to return an
icon related specifically to the Comm device functions of the service provider.
The parameters "tapi/line", "", or NULL may be used to
request the icon for the line service.
For
applications using an API version less than 0x00020000, if the provider does
not return an icon (whether because the given device class is invalid or the
provider does not support icons), TAPI substitutes a generic Win32 Telephony
line device icon. For applications using API version 0x00020000 or greater,
TAPI substitutes the default line icon only if the lpszDeviceClass
parameter is "tapi/line", "" or NULL. For any other device
class, if the given device class is not valid or the provider does not support
icons for the class, lineGetIcon returns LINEERR_INVALDEVICECLASS.
See Also