アドレスを選択する
次のコード例では、TAPI オブジェクトを使用して、指定したメディアの種類の要件のセットを処理できるアドレスの使用可能なテレフォニー リソースを調べます。 この例では、オーディオとビデオが必要なメディアです。
このコード例を使用する前に、「 TAPI を初期化する」の操作を実行する必要があります。
Note
この例では、実稼働コードに適したエラー チェックとリリースはありません。
// Declare the interfaces used to select an address.
IEnumAddress * pIEnumAddress;
ITAddress * pAddress;
ITMediaSupport * pMediaSupport;
// Use the TAPI object to enumerate available addresses.
hr = gpTapi->EnumerateAddresses( &pIEnumAddress );
// If (hr != S_OK) process the error here.
// Locate an address that can support the media type the application needs.
while ( S_OK == pIEnumAddress->Next(1, &pAddress, NULL) )
{
// Determine the media support.
hr = pAddress->QueryInterface(
IID_ITMediaSupport,
(void **)&pMediaSupport
);
// If (hr != S_OK) process the error here.
// In this example, the required media type is already known.
// The application can also use the address object to
// enumerate the media supported, then choose from there.
hr = pMediaSupport->QueryMediaType(
TAPIMEDIATYPE_AUDIO|TAPIMEDIATYPE_VIDEO,
&bSupport
);
// If (hr != S_OK) process the error here.
if (bSupport)
{
break;
}
}
// pAddress is now a usable address.