TSPI_providerShutdown function (tspi.h)

The TSPI_providerShutdown function shuts down the service provider. The service provider terminates any activities it has in progress and releases any resources it has allocated.


LONG TSPIAPI TSPI_providerShutdown(
  DWORD dwTSPIVersion,
  DWORD dwPermanentProviderID



The version of the TSPI definition under which this function must operate. The caller can use TSPI_lineNegotiateTSPIVersion or TSPI_phoneNegotiateTSPIVersion with the special dwDeviceID INITIALIZE_NEGOTIATION to negotiate a version that is guaranteed to be acceptable to the service provider.


This parameter allows the service provider to determine which among multiple possible instances of the service provider is being shut down. The value of the parameter is identical to that passed in the parameter of the same name in TSPI_providerInit.

Return value

Returns zero if the function succeeds, or an error number if an error occurs. Possible return values are as follows:



The final paired call to this function must be the last call to any of the TSPI functions prefixed with TSPI_line or TSPI_phone other than TSPI_lineNegotiateTSPIVersion, or TSPI_phoneNegotiateTSPIVersion. It is the caller's responsibility to ensure this.

This function should always succeed except in extraordinary circumstances. Most callers will probably ignore the return code because they will be unable to compensate for any error that occurs. The specified return values are more advisory for development diagnostic purposes than anything else.

There is no directly corresponding function in TAPI. In TAPI, multiple different usage instances can be outstanding, with an "application handle" parameter to identify the instance to be operated on. In TSPI, the interface architecture supports only a single usage instance for each distinct service provider.


Target Platform Windows
Header tspi.h

See also