Share via


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

FillInLunInfo 메서드는 하드웨어 공급자에게 해당 디스크 디바이스를 지원하는지 여부를 나타내고 VDS_LUN_INFORMATION 구조의 누락을 수정하라는 메시지를 표시합니다. VSS는 IVssHardwareSnapshotProvider::LocateLuns 메서드 뒤 또는 IVssHardwareSnapshotProvider::OnLunEmpty 메서드 앞에 FillInLunInfo 메서드를 호출하여 섀도 복사본 LUN과 연결된 VDS_LUN_INFORMATION 구조를 가져옵니다. VSS는 IVssHardwareSnapshotProvider::GetTargetLuns 메서드에서 받은 VDS_LUN_INFORMATION 구조를 비교하여 섀도 복사본 LUN을 식별합니다. 구조체가 일치하지 않으면 요청자는 불일치를 나타내는 VSS_S_SOME_SNAPSHOTS_NOT_IMPORTED 받습니다.

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

구문

HRESULT FillInLunInfo(
  [in]      VSS_PWSZ            wszDeviceName,
  [in, out] VDS_LUN_INFORMATION *pLunInfo,
  [out]     BOOL                *pbIsSupported
);

매개 변수

[in] wszDeviceName

섀도 복사본 LUN에 해당하는 디바이스입니다.

[in, out] pLunInfo

섀도 복사본 LUN에 대한 VDS_LUN_INFORMATION 구조체입니다.

[out] pbIsSupported

디바이스가 지원되는 경우 공급자는 pbIsSupported 매개 변수가 가리키는 위치에서 TRUE를 반환해야 합니다.

반환 값

VSS는 이 메서드의 반환 값을 무시합니다.

Windows Server 2003: VSS는 다음 값 중 하나일 수 있는 반환 값을 무시하지 않습니다.

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

설명

VSS는 공급자가 GetTargetLuns 메서드에서 이전에 초기화한 각 VDS_LUN_INFORMATION 구조에 대해 FillInLunInfo 메서드를 호출합니다. 또한 VSS는 가져오기 프로세스 중에 시스템에 도착하는 각 새 디스크 디바이스에 대해 FillInLunInfo 메서드를 호출합니다.

공급자는 pLunInfo 매개 변수에서 받은 VDS_LUN_INFORMATION 구조의 누락을 수정할 수 있습니다. 그러나 공급자는 이 구조체의 m_rgInterconnects 멤버 값을 수정해서는 안 됩니다.

VDS_LUN_INFORMATION 구조의 멤버는 다음과 같은 예외를 제외하고 SCSI 조회 데이터 및 중요 제품 데이터 페이지 80(디바이스 일련 번호) 정보에 해당합니다.

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

공급자에 알 수 없는 LUN에 대해 FillInLunInfo 메서드가 호출되면 공급자가 오류를 반환하지 않아야 합니다. 대신 pbIsSupported 매개 변수가 가리키는 BOOL 값에 FALSE를 반환하고 성공을 반환해야 합니다. 공급자가 LUN을 인식하는 경우 BOOL 값을 TRUE로 설정해야 합니다.

요구 사항

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

추가 정보

AreLunsSupported

GetTargetLuns

IVssHardwareSnapshotProvider

LocateLuns

OnLunEmpty

VDS_LUN_INFORMATION

VDS_STORAGE_IDENTIFIER