ISyncMgrHandlerInfo::IsActive 方法 (syncmgr.h)
取得值,這個值表示是否可以同步處理程式。
Syntax
HRESULT IsActive();
傳回值
類型: HRESULT
如果處理程式為使用中,則傳回S_OK;否則,S_FALSE。
如果處理程式想要同步中心維持目前狀態,它可以傳回E_NOTIMPL。 如果傳回任何其他值,同步中心會將處理程式的狀態設定為最後一個已知值。 如果處理程式在該情況下的最後一個已知值處於非作用中狀態,則同步中心會停用 安裝程式 工作。 如果處理程式的最後一個已知值作用中,則不會停用 Delete 工作。
如果SYNCMGR_HCM_QUERY_BEFORE_ACTIVATE或SYNCMGR_HCM_QUERY_BEFORE_DEACTIVE旗標是在 GetCapabilities 傳回的遮罩中設定,則處理程式必須管理自己的啟用狀態,因此必須傳回S_OK或S_FALSE。 任何其他傳回值都會被視為錯誤。
備註
如果處理程式不在作用中,它會出現在 [同步設定] 資料夾中。 該資料夾中的處理程式無法同步處理。 若要將處理程式移至 [同步中心] 資料夾,使用者會從處理程式的快捷方式功能表或命令模組中選取 安裝程式 工作。
如果處理程式作用中,它會出現在主要同步中心資料夾中。 使用中的處理程式可由使用者或 透過 ISyncMgrControl 介面進行同步處理。 若要將處理程式移至 [同步設定] 資料夾,使用者會在處理程式的快捷方式功能表上或命令模組上選取 [刪除 ] 工作。
每當呼叫 UpdateHandler 方法時,同步中心就會呼叫此方法。
範例
下列範例示範這個方法的實作,這個方法會呼叫私用類別函式來擷取使用中狀態。
STDMETHODIMP CMyDeviceHandler::IsActive()
{
// Return a previously-calculated value.
return (_fIsActive ? S_OK : S_FALSE);
}
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | syncmgr.h |