The lineRemoveProvider function removes an existing telephony service provider from the telephony system.
LONG lineRemoveProvider(
DWORD dwPermanentProviderID,
HWND hwndOwner
);
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.
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.
Version: Use TAPI version 1.4 and later.
Header: Declared in tapi.h.
Import Library: Link with tapi32.lib.
TAPI Reference Overview, Supplementary Line Services Functions, LINE_CLOSE, PHONE_CLOSE