共用方式為


IVssAdmin::RegisterProvider method (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 參數相同。

返回值

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

回傳碼 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 作業系統上註冊。
 

需求

Requirement 價值觀
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
支援的最低伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平臺 窗戶
Header VSadmin.h

另請參閱

IVss管理員

UnregisterProvider