Share via


IVssAdmin::RegisterProvider 메서드(vsadmin.h)

RegisterProvider 메서드는 새 섀도 복사본 공급자를 등록합니다.

구문

HRESULT RegisterProvider(
  [in] VSS_ID            pProviderId,
  [in] CLSID             ClassId,
  [in] VSS_PWSZ          pwszProviderName,
  [in] VSS_PROVIDER_TYPE eProviderType,
  [in] VSS_PWSZ          pwszProviderVersion,
  [in] VSS_ID            ProviderVersionId
);

매개 변수

[in] pProviderId

공급자를 고유하고 영구적으로 식별하는 VSS_ID . 정의된 후에는 소프트웨어 수정 버전이 업데이트되더라도 ProviderId 매개 변수는 동일하게 유지되어야 합니다. ProviderId 매개 변수는 두 공급자가 동일한 시스템에서 활성화될 만큼 기능이 충분히 변경되는 경우에만 변경해야 합니다. 요청자는 ProviderId 매개 변수를 사용하여 특정 공급자를 섀도 복사본 만들기에 사용하도록 요청할 수 있습니다.

[in] ClassId

공급자의 CLSID입니다.

[in] pwszProviderName

공급자의 이름입니다.

[in] eProviderType

공급자 형식을 지정하는 VSS_PROVIDER_TYPE 열거형 값입니다. VSS_PROV_HARDWARE Windows 클라이언트 운영 체제 버전에서 유효한 공급자 유형이 아닙니다. 하드웨어 공급자는 Windows 서버 운영 체제 버전에서만 실행됩니다.

[in] pwszProviderVersion

공급자의 버전입니다.

[in] ProviderVersionId

이 버전의 공급자를 고유하게 식별하는 VSS_ID . pProviderIdProviderVersionId 매개 변수의 조합은 고유해야 합니다. ProviderVersionId 매개 변수는 다른 공급자의 ProviderVersionId 매개 변수와 같을 수 있습니다.

반환 값

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

반환 코드 설명
S_OK
공급자가 성공적으로 등록되었습니다.
E_INVALIDARG
하나 이상의 매개 변수 값이 잘못되었습니다. 예를 들어 VSS_PROV_HARDWARE Windows 클라이언트 운영 체제 버전에서 유효한 공급자 유형이 아닙니다.
E_OUTOFMEMORY
메모리 부족 또는 기타 시스템 리소스.
E_ACCESSDENIED
호출자가 관리자가 아닙니다.
VSS_E_PROVIDER_ALREADY_REGISTERED
공급자가 이 컴퓨터에 이미 등록되어 있습니다.
VSS_E_UNEXPECTED
예기치 않은 오류입니다. 오류 코드가 오류 로그 파일에 기록됩니다. 자세한 내용은 VSS에서 이벤트 및 오류 처리를 참조하세요.

Windows Server 2008, Windows Vista, Windows Server 2003 및 Windows XP: 이 값은 Windows Server 2008 R2 및 Windows 7까지 지원되지 않습니다. E_UNEXPECTED 대신 사용됩니다.

설명

하드웨어 공급자가 업데이트되면 설치 애플리케이션은 UnregisterProvider 메서드를 호출하여 오래된 버전을 등록 취소한 다음 RegisterProvider 메서드를 호출하여 업데이트된 공급자를 등록해야 합니다.

참고 하드웨어 공급자는 Windows Server 운영 체제에만 등록할 수 있습니다.
 

요구 사항

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

추가 정보

IVssAdmin

UnregisterProvider