TAPI バージョン管理
時間の経過と同時に、TAPI、アプリケーション、およびサービス プロバイダーの異なるバージョンが生成される可能性があります。 これらの新しいバージョンでは、新機能、データ構造の新しいメンバー、新しいビット フィールドなど、新しい定義を作成できます。 したがって、さまざまなデータ構造を解釈する方法を示すには、バージョン番号が必要です。
さまざまなバージョンのアプリケーション、TAPI 自体のバージョン、および異なるベンダーによるサービス プロバイダーのバージョンの最適な相互運用性を実現するために、Microsoft テレフォニーはアプリケーション用の単純なバージョン ネゴシエーション メカニズムを提供します。 TAPI とテレフォニー サービス プロバイダーが回線デバイスごとに同意する必要がある 2 つの異なるバージョンがあります。 1 つ目は、TAPI とテレフォニー サービス プロバイダー (TSP) Basic および補助テレフォニー (TAPI インターフェイス バージョンと呼ばれます) とネゴシエートされたバージョンです。 もう 1 つはプロバイダー固有の拡張機能 (存在する場合) 用であり、拡張機能バージョンと呼ばれます。 TAPI の基本機能と補足機能で使用されるデータ構造とデータ型の形式は TAPI バージョンによって定義され、拡張機能のバージョンではベンダー固有の拡張機能によって定義されるデータ構造の形式が決まります。
lineNegotiateAPIVersion 関数は TAPI バージョンをネゴシエートし、lineNegotiateExtVersion は TSP 拡張バージョンをネゴシエートします。 1 つの TSP で複数のバージョンを処理でき、古い TSP を使用している場合、アプリケーションは古いバージョンの使用に "フォールバック" する必要があります。 lineNegotiateAPIVersion では、dwApiVersion パラメーターの既定値はバージョンに従って次のように設定されます。
TAPI バージョン | 既定値 |
---|---|
1.3 | 0x00010003 |
1.4 | 0x00010004 |
2.0 | 0x00020000 |
2.1 | 0x00020001 |
2.2 | 0x00020002 |
ただし、TSP 自体がアプリケーションよりも新しいバージョンを使用している限り、TAPI ははるかに簡単になります。 TSP が実際に新しい場合、TAPI はアプリケーションのバージョンに "ダウン" を変換できます。 たとえば、TAPI 2.0 TSP は、TAPI バージョン 1.4 を特に処理できる必要はありません。 TAPI 1.4 アプリケーションが実行されている場合、TAPI は、すべての TAPI 2.0 構造体とメッセージを TAPI 1.4 に相当する、または可能な限り近い形式に変換します。 TAPI 1.4 に近似値がない場合、TAPI 2.0 固有の情報はすべて失われます。
拡張機能バージョンの正確な意味は、プロバイダー固有です。 拡張機能をサポートする TSP を使用するには、プロバイダーのドキュメントを参照してください。
TAPI にはさまざまなバージョンがあります。 これらのバージョンのほとんどは TAPI およびテレフォニー サービス プロバイダー インターフェイス (TSPI) のドキュメント セットの変更に関連していますが、アーキテクチャの違い、オペレーティング システムのバリエーション、再頒布可能パッケージ、TSP 開発の問題など、各バージョンには他にも影響があります。
TAPI バージョン | Distribution |
---|---|
1.0 – 1.2 | これ以上使用すべきではないベータ版。 |
1.4 | Windows 95 に含まれています。 |
1.5 | Windows CE 1.0 に含まれています。 |
2.0 | WINDOWS NT 4.0 SP3 に含まれています。 |
2.1 | SP4 および Windows 98 を使用するWindows NT 4.0 に含まれています。 |
2.2 | Windows Server 2003、Windows XP、Windows 2000 に含まれています。 |