次の方法で共有


初期化とシャットダウン

アプリケーションで TAPI の 30 の補助電話機能のいずれかを使用するには、TAPI への接続が必要です。これにより、メッセージを受信できます。 アプリケーションは 、phoneInitializeEx 関数を使用してこの接続を確立します。 この関数では、TAPI が電話の状態の変化と電話機能の非同期完了をアプリケーションに通知する通知メカニズムを指定します。

phoneInitializeEx 関数は、アプリケーション ハンドルと電話デバイスの数という 2 つの情報をアプリケーションに返します。 アプリケーション ハンドルは、TAPI のアプリケーションの使用法を表します。 電話ハンドルを使用する TAPI 関数では、このハンドルは指定された電話ハンドルから派生されるため、アプリケーション ハンドルは必要ありません。

phoneInitializeEx によって返される 2 番目の情報は、TAPI で使用できる電話デバイスの数です。 電話デバイスは、デバイス識別子 (デバイス ID) によって識別されます。 有効なデバイス識別子の範囲は、0 から電話デバイスの数から 1 を引いた数までです。 たとえば、 phoneInitializeEx がシステムに 2 台の電話デバイスがあることを報告した場合、有効な電話デバイス識別子は 0 と 1 になります。 アプリケーションは TAPI の電話機能を使用して終了すると、 phoneShutdown を呼び出し、そのアプリケーション ハンドルを渡して TAPI の使用をシャットダウンします。 これにより、TAPI はアプリケーションに割り当てられたリソースを解放できます。

アプリケーションは、(少なくとも監視のために) 電話を開かずに phoneInitializeEx を呼び出さないでください。 アプリケーションが監視されておらず、デバイスを使用していない場合は、不要な場合に TAPI ダイナミック リンク ライブラリによって割り当てられたメモリ リソースを解放できるように 、phoneShutdown を呼び出し、ライブラリ自体を不要な状態でメモリからアンロードできるようにする必要があります。

phoneInitializeExphoneShutdown の両方が同期的に動作します。 つまり、これらの関数は成功または失敗の兆候を返し、非同期要求識別子を返すことはありません。