Share via


IVssHardwareSnapshotProvider::GetTargetLuns 메서드(vsprov.h)

GetTargetLuns 메서드는 하드웨어 공급자에게 새로 만든 섀도 복사본 LUN에 대한 VDS_LUN_INFORMATION 구조를 초기화하라는 메시지를 표시합니다. GetTargetLuns 메서드는 IVssProviderCreateSnapshotSet::P ostCommitSnapshots 메서드 다음에 호출됩니다. 새로 만든 각 LUN에 대한 정보 식별은 VDS_LUN_INFORMATION 구조를 통해 VSS로 반환됩니다.

참고 하드웨어 공급자는 Windows Server 운영 체제에서만 지원됩니다.
 

구문

HRESULT GetTargetLuns(
  [in]      LONG                lLunCount,
  [in]      VSS_PWSZ            *rgDeviceNames,
  [in]      VDS_LUN_INFORMATION *rgSourceLuns,
  [in, out] VDS_LUN_INFORMATION *rgDestinationLuns
);

매개 변수

[in] lLunCount

원래 볼륨에 기여하는 LUN 수입니다.

[in] rgDeviceNames

문자열에 대한 lLunCount 포인터 배열에 대한 포인터입니다. 각 문자열에는 섀도 복사할 원래 LUN의 이름이 포함됩니다.

[in] rgSourceLuns

원래 볼륨에 기여하는 각 LUN에 대해 하나씩 lLunCountVDS_LUN_INFORMATION 구조체의 배열에 대한 포인터입니다.

[in, out] rgDestinationLuns

lLunCountVDS_LUN_INFORMATION 구조체의 배열에 대한 포인터로, 섀도 복사본 처리 중에 생성된 새 섀도 복사본 LUN마다 하나씩 지정합니다. rgSourceLunsrgDestinationLuns 배열의 요소 간에 일대일 대응이 있어야 합니다.

반환 값

이 메서드는 이러한 값 중 하나를 반환할 수 있습니다.

반환 코드/값 설명
S_OK
0x00000000L
작업이 성공적으로 완료되었습니다.
E_OUTOFMEMORY
0x8007000EL
메모리 부족 또는 기타 시스템 리소스.
E_INVALIDARG
0x80070057L
매개 변수 값 중 하나가 잘못되었습니다.
VSS_E_PROVIDER_VETO
0x80042306L
예기치 않은 공급자 오류가 발생했습니다. 공급자는 사용자에게 문제를 resolve 방법에 대한 정보를 제공하는 이벤트를 애플리케이션 이벤트 로그에 보고해야 합니다.

설명

rgDestinationLuns 매개 변수에서 VSS는 새로 만든 각 섀도 복사본 LUN에 대해 빈 VDS_LUN_INFORMATION 구조를 제공합니다. 섀도 복사본 LUN이 화면에 표시되거나 시스템에 표시되지 않습니다. 공급자는 적절한 SCSI 조회 데이터 및 중요 제품 데이터 페이지 80(디바이스 일련 번호) 및 페이지 83(디바이스 ID) 정보를 사용하여 VDS_LUN_INFORMATION 구조의 멤버를 초기화해야 합니다. 구조체에는 원본 컴퓨터 또는 SAN에 연결된 다른 컴퓨터에서 Windows에서 섀도 복사본 LUN을 배치할 수 있도록 올바른 멤버 값이 포함되어야 합니다.

VDS_LUN_INFORMATION 구조체의 멤버는 다음과 같은 예외를 제외하고 페이지 80 정보에 해당합니다.

  • m_version 멤버는 VER_VDS_LUN_INFORMATION 설정해야 합니다.
  • m_BusType 멤버는 가져오는 동안 비교에서 무시됩니다. 이 값은 해당 디스크 디바이스의 PnP 스토리지 스택에 따라 달라집니다. 일반적으로 VDSBusTypeScsi입니다.
  • m_diskSignature 멤버는 가져오는 동안 비교에서 무시됩니다. 공급자는 이 멤버를 GUID_NULL 설정해야 합니다.
VDS_LUN_INFORMATION 구조체의 m_deviceIdDescriptor 멤버인 VDS_STORAGE_DEVICE_ID_DESCRIPTOR 구조체의 멤버는 페이지 83 정보에 해당합니다. 이 구조체에서 각 VDS_STORAGE_IDENTIFIER 구조체는 디바이스 식별자(즉, 연결 유형이 0인 스토리지 식별자)의 STORAGE_IDENTIFIER 구조에 해당합니다. STORAGE_IDENTIFIER 구조에 대한 자세한 내용은 WDK(Windows 드라이버 키트) 설명서를 참조하세요.

여기에서 반환된 VDS_LUN_INFORMATION 구조체는 가져오는 동안 IVssHardwareSnapshotProvider::FillInLunInfo 메서드에 제공된 구조체와 동일해야 합니다. 따라서 VSS는 이 정보를 사용하여 가져올 때 새로 도착하는 섀도 복사본 LUN을 식별할 수 있습니다. 이러한 동일한 구조는 IVssHardwareSnapshotProvider::LocateLuns 메서드의 공급자에게 전달됩니다.

요구 사항

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

추가 정보

IVssHardwareSnapshotProvider

VDS_LUN_INFORMATION