ISyncMgrSyncCallback::P roposeItem 方法 (syncmgr.h)

建议将新项添加到之前枚举的项集。

语法

HRESULT ProposeItem(
  [in] ISyncMgrSyncItem *pNewItem
);

参数

[in] pNewItem

类型: ISyncMgrSyncItem*

指向表示新项的 ISyncMgrSyncItem 实例的指针。

返回值

类型: HRESULT

如果成功,则返回 S_OK,否则返回错误值。 如果 pszItemID 已存在,则返回E_INVALIDARG。

注解

当项目不被视为同步集的一部分时,通常调用 ISyncMgrSyncCallback::P roposeItem,除非它们已成功同步。 在调用 ISyncMgrSyncCallback::CommitItem 方法之前,同步中心不会在 UI 中显示此项。

示例

以下示例演示由 Synchronize 方法使用的 ISyncMgrSyncCallback::P roposeItemISyncMgrSyncCallback::CommitItem

HRESULT CMyDeviceHandler::Synchronize(...)
{
    ...

    // Start synchronizing the handler.

    ...

    // Find items waiting to be created.
    for (...)
    {
        // Create the item.
        ISyncMgrSyncItem *pNewItem = NULL;
        LPWSTR szItemID[MAX_SYNCMGR_ID];
        
        hr = GetNextNewItem(&pNewItem, szItemID, ARRAYSIZE(szItemID));
        if (SUCCEEDED(hr))
        {
            // Propose this item to Sync Center.
            hr = pCallback->ProposeItem(pNewItem);
            if (SUCCEEDED(hr))
            {
                // Synchronize the item.
                // Synchronization was successful.  Commit the item.
                hr = pCallback->CommitItem(szItemID);
            }
            pNewItem->Release();
        }
    }
    ...
}

要求

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