ISyncMgrControl::EnableItem 方法 (syncmgr.h)

启用或禁用由指定处理程序管理的同步项。

语法

HRESULT EnableItem(
  [in] BOOL                  fEnable,
  [in] LPCWSTR               pszHandlerID,
  [in] LPCWSTR               pszItemID,
  [in] HWND                  hwndOwner,
  [in] SYNCMGR_CONTROL_FLAGS nControlFlags
);

参数

[in] fEnable

类型: BOOL

如果为 TRUE ,则启用; 禁用,则为 FALSE。

[in] pszHandlerID

类型: LPCWSTR

指向包含处理程序的唯一 ID 的缓冲区的指针。 此字符串的最大长度MAX_SYNCMGR_ID包括终止 null 字符。

[in] pszItemID

类型: LPCWSTR

指向包含项的唯一 ID 的缓冲区的指针。 此字符串的最大长度MAX_SYNCMGR_ID包括终止 null 字符。

[in] hwndOwner

类型:HWND

窗口的句柄,项可以使用该句柄来显示任何必要的 UI。 此值可以为 NULL

[in] nControlFlags

类型: SYNCMGR_CONTROL_FLAGS

SYNCMGR_CONTROL_FLAGS 枚举中的值,该值指定是应以同步还是异步方式执行项的启用或禁用。

返回值

类型: HRESULT

如果该方法成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

注解

已启用的项是可以同步的项。

如果指定的项在 GetCapabilities 方法返回的掩码中返回SYNCMGR_ICM_QUERY_BEFORE_ENABLESYNCMGR_ICM_QUERY_BEFORE_DISABLE,则会向用户显示一个在启用或禁用该项之前请求的确认对话框。 如果未请求查询 UI,或者在用户确认操作后,将调用该项的 Enable 方法。

如果在 nControlFlags 参数中设置了SYNCMGR_CF_WAIT,则在同步中心处理此通知之前 ,EnableItem 不会返回。

示例

以下示例演示处理程序过程使用 ISyncMgrControl::EnableHandler

void MiscProc(...)
{
    ...

    // Get the Sync Center control object.
    ISyncMgrControl *pControl = NULL;
    
    hr = CoCreateInstance(CLSID_SyncMgrControl, 
                          CLSCTX_SERVER, 
                          IID_PPV_ARGS(&pControl));
    if (SUCCEEDED(hr))
    {
        // Tell Sync Center to disable the item.
        hr = pControl->EnableItem(FALSE, 
                                  s_szMySyncHandlerID,
                                  s_szMySyncHandlerMusicContentID, 
                                  hwnd,
                                  SYNCMGR_CF_WAIT);
        pControl->Release();
    }

    ...

}

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 syncmgr.h