INetworkCostManager::SetDestinationAddresses 메서드(netlistmgr.h)

SetDestinationAddresses 메서드는 변경 알림을 상태 비용 또는 데이터 요금제 수신을 위해 지정된 대상 IPv4/IPv6 주소를 등록합니다.

구문

HRESULT SetDestinationAddresses(
  [in] UINT32       length,
  [in] NLM_SOCKADDR *pDestIPAddrList,
       VARIANT_BOOL bAppend
);

매개 변수

[in] length

목록의 대상 IPv4/IPv6 주소 수입니다.

[in] pDestIPAddrList

변경 알림을 상태 비용 또는 데이터 요금제에 등록할 대상 IPv4/IPv6 주소 목록을 포함하는 NLM_SOCKADDR 구조체입니다.

bAppend

true이면 pDestIPAddrList 가 기존 주소 목록에 추가됩니다. 그렇지 않으면 기존 목록을 덮어씁니다.

반환 값

성공 시 S_OK 반환하고, 그렇지 않으면 HRESULT 오류 코드가 반환됩니다.

반환 코드 설명
E_INVALIDARG
다음 중 하나가 발생하면 반환됩니다.
  • length 는 0입니다.
  • length 가 NLM_MAX_ADDRESS_LIST_SIZE(10)보다 큽니다.
  • bAppend 는 VARIANT_TRUE 있지만 길이 값이 있는 기존 목록에 구독된 대상 수를 포함하면 NLM_MAX_ADDRESS_SIZE 초과됩니다.
  • 제공된 목록의 대상 주소가 잘못되었습니다.
E_POINTER
destIPAddrList 는 NULL입니다.
HRESULT_FROM_WIN32(ERROR_NOT_SUPPORTED)
요청이 지원되지 않습니다. 이 오류는 IPv4 또는 IPv6 스택이 로컬 컴퓨터에 없지만 destIPAddr에서 IPv4 또는 IPv6 주소를 지정한 경우 반환됩니다.
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
이 메서드는 IConnectionPoint::Advise를 호출하여 INetworkCostManagerEvents에 등록한 후 호출되었습니다. 자세한 내용은 비고를 참조하세요.

설명

이 메서드는 IConnectionPoint::Advise 전에 호출해야 합니다. IConnectionPoint::Advise가 호출되면 마지막 싱크가 IConnectionPoint::UnAdvise를 호출할 때까지 이 메서드가 성공적으로 완료되지 않습니다. 그러나 이 메서드는 IConnectionPoint::Advise를 호출하기 전에 여러 번 호출할 수 있습니다.

pDestIPAddrList로 표시된 대상 주소 목록에 중복 주소가 포함된 경우 각 주소 중 하나만 비용 변경 내용을 알리는 데 사용됩니다. 호출자는 길이 가 0으로 설정된 이 함수, destIPAddrList 집합 NULL 및 bAppend set FALSE를 사용하여 대상 목록을 지울 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 8 [데스크톱 앱만 해당]
지원되는 최소 서버 지원되는 버전 없음
대상 플랫폼 Windows
헤더 netlistmgr.h

추가 정보

IConnectionPoint::Advise

IConnectionPoint::UnAdvise

INetworkCostManager