Share via


IVdsLun::QueryActiveControllers 메서드(vdshwprv.h)

[Windows 8 및 Windows Server 2012 가상 디스크 서비스 COM 인터페이스는 Windows Storage 관리 API로 대체됩니다.]

현재 활성 컨트롤러(LUN에 액세스할 수 있는 컨트롤러)의 열거형을 반환합니다.

구문

HRESULT QueryActiveControllers(
  [out] IEnumVdsObject **ppEnum
);

매개 변수

[out] ppEnum

하위 시스템의 컨트롤러를 컨트롤러 개체로 열거하는 데 사용할 수 있는 IEnumVdsObject 인터페이스 포인터의 주소입니다. 자세한 내용은 열거형 개체 작업을 참조하세요. 호출자는 IUnknown::Release 메서드를 호출하여 더 이상 필요하지 않은 경우 인터페이스와 각 컨트롤러 개체를 해제해야 합니다.

반환 값

이 메서드는 표준 HRESULT 값(예: E_INVALIDARG 또는 E_OUTOFMEMORY) 및 VDS 관련 반환 값을 반환할 수 있습니다. 또한 HRESULT_FROM_WIN32 매크로를 사용하여 변환된 시스템 오류 코드를 반환할 수도 있습니다. 오류는 VDS 자체 또는 사용 중인 기본 VDS 공급자 에서 발생할 수 있습니다. 가능한 반환 값은 다음과 같습니다.

반환 코드/값 Description
S_OK
활성 컨트롤러의 열거형을 반환합니다. LUN에 활성 컨트롤러가 없으면 열거형이 비어 있습니다.
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
이 반환 값은 배열에 대한 정보를 캐시하는 공급자 내부의 소프트웨어 또는 통신 문제를 알릴 수 있습니다. IVdsHwProvider::Reenumerate 메서드와 IVdsHwProvider::Refresh 메서드를 사용하여 캐시를 복원합니다.
VDS_E_OBJECT_DELETED
0x8004240BL
LUN 개체가 더 이상 존재하지 않습니다.
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
LUN이 실패 상태이며 요청된 작업을 수행할 수 없습니다.
VDS_E_ANOTHER_CALL_IN_PROGRESS
0x80042404L
다른 작업이 진행 중입니다. 이 작업은 이전 작업 또는 작업이 완료될 때까지 진행할 수 없습니다.

설명

IVdsLun::AssociateControllers 메서드를 사용하여 컨트롤러를 설정합니다. IVdsController::QueryAssociatedLuns 메서드를 사용하여 특정 컨트롤러와 연결된 LUN을 쿼리합니다.

대부분의 하위 시스템은 LUN에 대해 하나의 활성 컨트롤러만 제공하므로 다른 컨트롤러는 대기 모드로 남습니다. 그러나 일부 하위 시스템 제조업체는 동시에 여러 개의 활성 컨트롤러를 허용합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 vdshwprv.h
라이브러리 Uuid.lib

추가 정보

IEnumVdsObject

IVdsHwProvider::Reenumerate

IVdsHwProvider::Refresh

IVdsLun

IVdsLun::AssociateControllers