OID_CO_GET_ADDRESSES OID は、クライアントが呼び出しマネージャーに対してクエリを実行するために使用します。 このクエリは、クライアントにOID_CO_ADDRESS_CHANGEを送信する呼び出しマネージャーに応答して行われます。 このクエリに応答して、呼び出しマネージャーは、次のように定義されたCO_ADDRESS_LIST構造として書式設定されたアドレス一覧をクライアントに送信します。
typedef struct _CO_ADDRESS_LIST {
ULONG NumberOfAddressesAvailable;
ULONG NumberOfAddresses;
CO_ADDRESS AddressList;
} CO_ADDRESS_LIST, *PCO_ADDRESS_LIST;
この構造体のメンバーには、次の情報が含まれています。
NumberOfAddressesAvailable
通話マネージャーのアドレス一覧内のアドレスの最大数を指定します。
AddressListで呼び出しマネージャーがクライアントに返す実際のアドレス数に関係なく、AddressList のバッファーのサイズは、常に NumberOfAddressesAvailable 、呼び出しマネージャーに固有の固定サイズであるアドレス サイズを乗算します。
NumberOfAddresses
呼び出しマネージャーが AddressList に書き込んだアドレス数を指定します。
AddressList
エイリアス アドレスは、次のように定義されたCO_ADDRESS構造体として書式設定されます。
typedef struct _CO_ADDRESS {
ULONG AddressSize;
UCHAR Address[1];
} CO_ADDRESS, *PCO_ADDRESS;
この構造体のメンバーには、次の情報が含まれています。
AddressSize
address の構造体のサイズ バイト単位で指定します。
アドレス
アドレスの一覧を含む可変長配列を指定します。 アドレス形式は、呼び出しマネージャーによって使用されるシグナリング プロトコルに固有です。
AddressList には、ローカル ホストに到達できるネットワーク アドレスが含まれています。 特定のクライアントに返される AddressList には、すべてのクライアントに共通するアドレスと、OID_CO_ADD_ADDRESSを使用してマネージャーのアドレスの一覧を呼び出すためにクライアント自体が追加したアドレスが含まれます。
必要条件
バージョン: Windows Vista 以降の ヘッダー: Ntddndis.h (Ndis.h を含む)