lineDevSpecific 関数 (tapi.h)

lineDevSpecific 関数を使用すると、サービス プロバイダーは他の TAPI 関数によって提供されない機能にアクセスできます。 拡張機能の意味はデバイス固有であり、これらの拡張機能を利用するには、アプリケーションがそれらを完全に認識する必要があります。

構文

LONG lineDevSpecific(
  HLINE  hLine,
  DWORD  dwAddressID,
  HCALL  hCall,
  LPVOID lpParams,
  DWORD  dwSize
);

パラメーター

hLine

ライン デバイスへのハンドル。 このパラメーターは必須です。

dwAddressID

指定された回線デバイスのアドレス識別子。 アドレス識別子は、アドレスに永続的に関連付けられます。識別子はオペレーティング システムのアップグレード全体で一定のままです。

hCall

呼び出しを処理します。 このパラメーターは省略可能ですが、指定した場合、それが表す呼び出しは hLine 回線デバイスに属している必要があります。 hCall の呼び出し状態はデバイス固有です。

lpParams

パラメーター ブロックを保持するために使用されるメモリ領域へのポインター。 このパラメーター ブロックの形式はデバイス固有であり、その内容は TAPI によってサービス プロバイダーとの間で渡されます。

dwSize

パラメーター ブロック領域のサイズ (バイト単位)。

戻り値

関数が非同期的に完了した場合は正の要求識別子を返し、エラーが発生した場合は負のエラー番号を返します。 対応するLINE_REPLY メッセージの dwParam2 パラメーターは、関数が成功した場合は 0、エラーが発生した場合は負のエラー番号です。 可能な戻り値は次のとおりです。

LINEERR_INVALADDRESSID、LINEERR_OPERATIONUNAVAIL、LINEERR_INVALCALLHANDLE、LINEERR_OPERATIONFAILED、LINEERR_INVALLINEHANDLE、LINEERR_RESOURCEUNAVAIL、LINEERR_INVALPOINTER、LINEERR_UNINITIALIZED、LINEERR_NOMEM。

追加の戻り値は、デバイス固有です。

解説

この操作は、拡張テレフォニー サービスの一部です。 意味を定義せずに、デバイス固有の機能へのアクセスを提供します。 この操作は、アプリケーションがデバイス固有の拡張機能バージョンを正常にネゴシエートした場合にのみ使用できます。

この関数は、ジェネリック パラメーター プロファイルを提供します。 パラメーター構造の解釈は、デバイス固有です。 dwAddressIDhCall のどちらを有効と想定するかは、デバイス固有です。 指定する場合は、 hLine に属している必要があります。 デバイス固有のアプリケーションに送り返された表示と応答では、 LINE_DEVSPECIFIC メッセージを使用する必要があります。

サービス プロバイダーは、この関数で使用するパラメーターを定義することで、デバイス固有の関数へのアクセスを提供できます。 これらのデバイス固有の拡張機能を使用するアプリケーションは、定義されている拡張機能について説明しているデバイス固有の (この場合はベンダー固有の) ドキュメントを参照してください。 通常、これらのデバイス固有の拡張機能に依存するアプリケーションは、他のサービス プロバイダー環境と連携できません。

注意 TAPI は、LINE_REPLY メッセージが返されるときに、返されたデータを lParam によって参照されるバッファーに書き込みます。 つまり、LINE_REPLY メッセージが返されるまでバッファーは有効なままである必要があります。そうしないと、データの破損や例外が発生する可能性があります。
 

必要条件

   
対象プラットフォーム Windows
ヘッダー tapi.h
Library Tapi32.lib
[DLL] Tapi32.dll

関連項目

拡張テレフォニー サービス リファレンス

LINE_DEVSPECIFIC

LINE_REPLY

TAPI 2.2 リファレンスの概要