共用方式為


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_IDpProviderIdProviderVersionId 參數的組合應該是唯一的。 ProviderVersionId 參數可以與另一個提供者的 ProviderVersionId 參數相同。

傳回值

這個方法可以傳回下列其中一個值。

傳回碼 Description
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