lineGetDevConfigA 関数 (tapi.h)

lineGetDevConfig 関数は、"不透明な" データ構造オブジェクトを返します。その内容は、行 (サービス プロバイダー) とデバイス クラスに固有です。 データ構造オブジェクトは、回線デバイスに関連付けられているメディア ストリーム デバイスの現在の構成を格納します。

構文

LONG lineGetDevConfigA(
  DWORD       dwDeviceID,
  LPVARSTRING lpDeviceConfig,
  LPCSTR      lpszDeviceClass
);

パラメーター

dwDeviceID

構成する回線デバイスの識別子。

lpDeviceConfig

デバイス構成構造体が返される VARSTRING 型のメモリ位置へのポインター。 要求が正常に完了すると、この場所にはデバイス構成が入力されます。 VARSTRING 構造体の dwStringFormat メンバーは、STRINGFORMAT_BINARYに設定されます。 lineGetDevConfig を呼び出す前に、アプリケーションは、この構造体の dwTotalSize メンバーを設定して、情報を返すために TAPI が使用できるメモリの量を示す必要があります。

メモ 構造体のサイズ パラメーターが正しくない場合は、データが上書きされる可能性があります。 構造体サイズの設定の詳細については、 メモリ割り当て に関するトピックを参照してください。
 

lpszDeviceClass

構成が要求されたデバイスのデバイス クラスを指定する null で終わる文字列へのポインター。 有効なデバイス クラス lineGetID 文字列は、関数に指定したものと同じです。

戻り値

関数が成功した場合は 0 を返し、エラーが発生した場合は負のエラー番号を返します。 可能な戻り値は次のとおりです。

LINEERR_BADDEVICEID、LINEERR_NODRIVER、LINEERR_INVALDEVICECLASS、LINEERR_OPERATIONUNAVAIL、LINEERR_INVALPOINTER、LINEERR_RESOURCEUNAVAIL、LINEERR_STRUCTURETOOSMALL、LINEERR_OPERATIONFAILED、LINEERR_NOMEM、LINEERR_UNINITIALIZED、LINEERR_NODEVICE。

解説

通話状態はデバイス固有です。

lineGetDevConfig 関数を使用すると、特定の回線デバイスに関連付けられているメディア ストリーム デバイスの構成を指定するデータ構造を TAPI から取得できます。 たとえば、この構造体の内容では、回線に関連付けられている "datamodem" メディア デバイスのデータ レート、文字形式、変調スキーム、およびエラー制御プロトコルの設定を指定できます。

通常、アプリケーションは lineGetID を呼び出して行に関連付けられているメディア ストリーム デバイスを識別し、 lineConfigDialog を呼び出してユーザーがデバイス構成を設定できるようにします。 その後、 lineGetDevConfig を呼び出し、特定の通話先に関連付けられている電話帳 (または他のデータベース) に構成情報を保存できます。 ユーザーが後で同じ宛先を再度呼び出す場合は、 lineSetDevConfig を使用して、ユーザーが選択した構成設定を復元できます。 lineSetDevConfiglineConfigDialogおよび lineGetDevConfig 関数は、ユーザーが設定を表示および更新できるように、この順序で使用できます。

構造体に含まれるデータの正確な形式は、行とメディア ストリーム API (デバイス クラス) に固有であり、文書化されておらず、未定義です。 この関数によって返される構造体に直接アクセスしたり、アプリケーションで操作したりすることはできませんが、そのまま保存し、後で lineSetDevConfig で設定を復元するために使用することしかできません。 構造体は、同じデバイス クラスであっても、必ずしも他のデバイスに渡すことはできません (ただし、これは一部のインスタンスでは機能しますが、保証されません)。

注意

tapi.h ヘッダーは、LINEGetDevConfig をエイリアスとして定義します。このエイリアスは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

必要条件

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

関連項目

基本的なテレフォニー サービス リファレンス

TAPI 2.2 リファレンスの概要

VARSTRING

lineConfigDialog

lineGetID

lineSetDevConfig