Article ID: 841712 - View products that this article applies to.
This article discusses why Telephony Application Programming Interface (TAPI) is not supported from managed code. An alternative method permits you to call TAPI functionality from managed code.
Because of the complexity of the TAPI 3.x Component Object Model (COM) interface, the managed wrapper that is created by Microsoft Visual Studio .NET does not work. Therefore, you cannot call TAPI functionality from managed code.
Microsoft has no current plans to release a TAPI interoperative component.
Using TAPI from managed codeYou can use different versions of TAPI in different programming environments.
TAPI 2.xTAPI 2.x is an interface that is based on the C programming language.
You can call TAPI functionality from the Managed Extensions for C++ applications in Microsoft Visual Studio .NET by using TAPI 2.x (Tapi32.dll).
All the TAPI 2.x data structures are based on the DWORD data type. TAPI 2.x also requires heavy use of pointers. Therefore, TAPI 2.x functionality is difficult to use from any language other than the Managed Extensions for C++.
TAPI 3.xTAPI 3.x is an interface that is based on Component Object Model (COM).
You can call TAPI 3.x (Tapi3.dll) functionality from unmanaged code. Create an unmanaged DLL that calls TAPI 3.x functionality, and then call the unmanaged DLL from managed code.
For more information, visit the following Microsoft Developer Network (MSDN) Web sites:
TAPI 2.2 Overview
TAPI 3.1 Overview
Article ID: 841712 - Last Review: January 18, 2007 - Revision: 2.2