Freigeben über


ISyncMgrSyncCallback::P roposeItem-Methode (syncmgr.h)

Schlägt das Hinzufügen eines neuen Elements zu der Gruppe der zuvor aufgelisteten Elemente vor.

Syntax

HRESULT ProposeItem(
  [in] ISyncMgrSyncItem *pNewItem
);

Parameter

[in] pNewItem

Typ: ISyncMgrSyncItem*

Ein Zeiger auf eine instance von ISyncMgrSyncItem, die das neue Element darstellt.

Rückgabewert

Typ: HRESULT

Gibt bei erfolgreicher Ausführung S_OK oder andernfalls einen Fehlerwert zurück. Gibt E_INVALIDARG zurück, wenn pszItemID bereits vorhanden ist.

Hinweise

ISyncMgrSyncCallback::P roposeItem wird in der Regel aufgerufen, wenn Elemente nicht als Teil des Synchronisierungssatzes betrachtet werden, es sei denn, sie wurden erfolgreich synchronisiert. Das Synchronisierungscenter zeigt dieses Element erst auf der Benutzeroberfläche an, wenn die ISyncMgrSyncCallback::CommitItem-Methode aufgerufen wurde.

Beispiele

Das folgende Beispiel zeigt die Verwendung von ISyncMgrSyncCallback::P roposeItem und ISyncMgrSyncCallback::CommitItem durch die Synchronize-Methode .

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();
        }
    }
    ...
}

Anforderungen

   
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile syncmgr.h