다음을 통해 공유


ISyncMgrSyncCallback::P roposeItem 메서드(syncmgr.h)

이전에 열거된 항목 집합에 새 항목의 추가를 제안합니다.

구문

HRESULT ProposeItem(
  [in] ISyncMgrSyncItem *pNewItem
);

매개 변수

[in] pNewItem

형식: ISyncMgrSyncItem*

새 항목을 나타내는 ISyncMgrSyncItem의 instance 대한 포인터입니다.

반환 값

형식: 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