lineRemoveProvider

The lineRemoveProvider function removes an existing telephony service provider from the telephony system.

LONG lineRemoveProvider(
  DWORD dwPermanentProviderID,  
  HWND hwndOwner                
);
 

Parameters

dwPermanentProviderID
The permanent provider identifier of the service provider to be removed.
hwndOwner
A handle to a window to which any dialog boxes which need to be displayed as part of the removal process (for example, a confirmation dialog box by the service provider's TSPI_providerRemove function) would be attached. Can be a NULL value to indicate that any window created during the function should have no owner window.

Return Values

Returns zero if the request succeeds or a negative error number if an error occurs. Possible return values are:

LINEERR_INIFILECORRUPT, LINEERR_NOMEM, LINEERR_INVALPARAM, LINEERR_OPERATIONFAILED.

Remarks

If the call to TSPI_providerRemove succeeds, and the telephony system is active at the time, TAPI calls TSPI_lineShutdown and/or TSPI_phoneShutdown on the service provider (depending on which device types are active). Any line or phone handles still held by applications on associated devices are forcibly closed with LINE_CLOSE or PHONE_CLOSE messages (it is preferable for service providers to issue these messages as part of TSPI_providerRemove, after verification with the user). The devices previously under the control of that provider are then marked as "unavailable", so that any future attempts by applications to reference them by device identifier result in LINEERR_NODRIVER.

Although this is a new function that older applications would not be expected to call, for backward compatibility they should not be prevented from doing so. The function works the same way for all applications.

QuickInfo

  Version: Use TAPI version 1.4 and later.
  Header: Declared in tapi.h.
  Import Library: Link with tapi32.lib.

See Also

TAPI Reference Overview, Supplementary Line Services Functions, LINE_CLOSE, PHONE_CLOSE