다음을 통해 공유


MSFT_StorageProvider 클래스의 Discover 메서드

스토리지 공급자가 소유한 개체를 검색합니다.

이 메서드는 사용자가 스토리지 공급자가 소유한 개체를 명시적으로 검색하거나 다시 열거해야 하는 경우에 사용됩니다. 이 메서드를 호출하면 새 개체 또는 업데이트된 개체를 검색하기 위해 스토리지 하위 시스템에 대한 전체 또는 부분 캐시 무효화 및 유선 호출이 발생합니다. 비용이 많이 드는 작업이므로 이 메서드는 드물게 사용해야 합니다.

검색 작업의 scope DiscoveryLevelRootObject 매개 변수에 의해 제어됩니다. DiscoveryLevel 은 개체 검색의 깊이를 제어합니다. RootObject 는 검색이 발생할 시작점을 정의합니다.

구문

UInt32 Discover(
  [in]  UInt16                 DiscoveryLevel,
  [in]  MSFT_StorageObject REF RootObject,
  [in]  Boolean                RunAsJob,
  [out] MSFT_StorageJob    REF CreatedStorageJob,
  [out] String                 ExtendedStatus
);

매개 변수

DiscoveryLevel [in]

수행해야 하는 검색 수준(또는 깊이)입니다. 이 매개 변수는 루트 개체가 스토리지 공급자, 스토리지 하위 시스템 또는 NULL인 경우에만 지정할 수 있습니다. 지정하면 스토리지 공급자는 수준 0 부터 시작하여 지정된 수준에 도달할 때까지 계속되는 개체를 검색합니다. 검색된 수준 내에서 개체 간의 연결도 검색됩니다.

의미
수준 0 0 스토리지 공급자, 스토리지 하위 시스템 및 fileserver 개체가 검색됩니다. 참고: Windows 10: fileserver 개체 검색이 추가되었습니다.
수준 1 1 스토리지 풀, 파일 공유, 복원력 설정, 대상 포트, 대상 포털 및 초기자 식별자가 검색됩니다. 참고: Windows 10: 파일 공유 검색이 추가되었습니다.
수준 2 2 가상 디스크, 볼륨, 파티션, 디스크 및 마스킹 집합이 검색됩니다. 참고: Windows 10: 볼륨, 파티션 및 디스크 검색이 추가되었습니다.
수준 3 3 실제 디스크가 검색됩니다.

RootObject [in]

이 매개 변수가 설정되면 이 개체에서 검색이 시작됩니다. DiscoveryLevelNULL이면 RootObject에서 지정한 개체의 형식에 따라 잘 정의된 작업이 수행됩니다.

  • 스토리지 하위 시스템: 연결된 모든 개체가 검색됩니다.
  • 스토리지 풀: 연결된 복원력 설정, 가상 디스크 및 실제 디스크와 함께 풀이 검색됩니다.
  • 마스킹 집합: 연결된 대상 포트, 초기자 식별자 및 가상 디스크와 함께 마스킹 집합이 검색됩니다.
  • 다른 모든 개체의 경우 해당 개체만 검색되거나 새로 고쳐집니다.

RunAsJob [in]

TRUE이면 요청이 서비스에 오래 걸리는 경우 이 메서드는 CreatedStorageJob 매개 변수를 사용합니다. 작업을 추적하기 위해 스토리지 작업을 만든 경우 이 메서드는 메서드 매개 변수 선택됨 - 작업이 시작된 것을 반환합니다.

참고

RunAsJobTRUE인 경우에도 이 메서드는 충분한 시간 내에 완료된 경우에도 결과를 반환할 수 있습니다.

FALSE 또는 NULL인 경우 이 메서드는 호출에 대한 클라이언트의 메서드에 의해 결정되는 기본 WMI 비동기 동작을 따릅니다. 즉, 달리 요청하지 않는 한 동기적입니다.

CreatedStorageJob [out]

RunAsJobTRUE로 설정되어 있고 이 메서드를 실행하는 데 시간이 오래 걸리는 경우 이 매개 변수는 장기 실행 작업을 추적하는 데 사용되는 스토리지 작업 개체에 대한 참조를 받습니다.

ExtendedStatus [out]

포함된 MSFT_StorageExtendedStatus 개체를 포함하는 문자열입니다.

이 매개 변수를 사용하면 스토리지 공급자가 확장(구현별) 오류 정보를 반환할 수 있습니다.

반환 값

성공 (0)

지원되지 않음 (1)

지정되지 않은 오류 (2)

시간 제한 (3)

실패( 4)

잘못된 매개 변수 (5)

메서드 매개 변수 선택됨 - 작업 시작 됨(4096)

액세스 거부됨 (40001)

작업을 완료하는 데 충분한 리소스가 없습니다. (40002)

스토리지 공급자에 연결할 수 없습니다. (46000)

스토리지 공급자는 스토리지 하위 시스템에 연결할 수 없습니다. (46001)

스토리지 공급자는 필수 프로필을 지원하지 않습니다. (46002)

스토리지 공급자는 필요한 연결을 지원하지 않습니다. (46003)

루트 개체에 대해 검색이 실패했습니다. (46009 )

하나 이상의 하위 시스템에 대해 검색이 실패했습니다. (46010)

설명

스토리지 공급자는 시작 시 수준 0 검색을 완료해야 합니다. MSFT_StorageProviderMSFT_StorageSubSystem 개체를 캐시에 로드해야 합니다.

성능을 향상시키려면 iSCSITargetCreationScheme 속성이 Auto 로 설정된 스토리지 하위 시스템은 수준 2의 가상 디스크와 함께 대상 포트를 검색해야 합니다. 대상 포털은 수준 1에서 계속 검색되어야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 8 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2012 [데스크톱 앱만 해당]
네임스페이스 Root\Microsoft\Windows\Storage
MOF Storagewmi.mof

추가 정보

MSFT_StorageProvider

MSFT_StorageSubSystem