ISyncMgrSyncItemInfo::IsEnabled 方法 (syncmgr.h)

產生值,指出專案是否已啟用。

Syntax

HRESULT IsEnabled();

傳回值

類型: HRESULT

如果已啟用專案,則傳回S_OK;否則為 S_FALSE。

如果專案想要同步處理中心維持目前狀態,它可以傳回E_NOTIMPL。 如果傳回任何其他值,同步中心會將專案的已啟用狀態設定為最後一個已知值,並適當地啟用或停用相關聯的工作。

如果SYNCMGR_ICM_QUERY_BEFORE_ENABLE或SYNCMGR_ICM_QUERY_BEFORE_DISABLE旗標是在 GetCapabilities 傳回的遮罩中設定,處理程式必須管理自己的啟用狀態,因此必須傳回S_OK或S_FALSE。 任何其他傳回值都會被視為錯誤。

備註

如果專案已停用,則不會由同步中心同步處理。 此外,UI 中會移除或停用專案可用的許多可能動作,例如同步處理。

專案可以從 IsEnabled 傳回S_FALSE,並在其 GetPolicies 實作中設定SYNCMR_IPM_PREVENT_ENABLE旗標,以實作 Disconnected 狀態。 這會顯示專案已停用,並防止使用者手動啟用該專案。

啟用的值可在資料夾 UI 中當做 System.Sync.Enabled (PKEY_Sync_Enabled) 屬性使用。

每當呼叫 UpdateHandler 方法時,同步中心就會呼叫此方法。

範例

下列範例示範這個方法的實作,這個方法會呼叫私用類別函式來擷取啟用的狀態。

STDMETHODIMP CMyDeviceSyncItem::IsEnabled()
{
    // Return a previously-calculated value.
    return (_fIsEnabled ? S_OK : S_FALSE);
}

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
目標平台 Windows
標頭 syncmgr.h