Метод ISyncMgrSyncItem::GetItemID (syncmgr.h)
Возвращает уникальный идентификатор элемента синхронизации.
Синтаксис
HRESULT GetItemID(
[out] LPWSTR *ppszItemID
);
Параметры
[out] ppszItemID
Тип: LPWSTR*
При возврате этого метода содержит указатель на буфер, содержащий идентификатор элемента. Эта строка имеет максимальную длину MAX_SYNCMGR_ID включая завершающий символ NULL .
Возвращаемое значение
Тип: HRESULT
Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .
Комментарии
Идентификатор, полученный этим методом, не может измениться. Как правило, идентификатор имеет вид строки GUID. Однако это не является обязательным требованием. Идентификатор может быть любой строкой, уникальной в контексте обработчика.
Если GetItemID завершается сбоем или в ppszItemID возвращается пустая строка, элемент синхронизации не отображается в папке обработчика и центр синхронизации не будет пытаться синхронизировать его.
Идентификатор, полученный этим методом, доступен в пользовательском интерфейсе папки как свойство System.Sync.ItemID (PKEY_Sync_HandlerID).
Элемент отвечает за выделение буфера строки, на который указывает ppszComment через CoTaskMemAlloc. Центр синхронизации освобождает буфер строк через CoTaskMemFree.
В более ранних реализациях Диспетчера синхронизации эти данные были получены с помощью структуры SYNCMGRITEM .
Примеры
В следующем примере показана реализация этого метода.
STDMETHODIMP CMyDeviceSyncItem::GetItemID(__out LPWSTR *ppszItemID)
{
HRESULT hr = S_OK;
*ppszName = NULL;
// Generate the string version of the ID.
if (_pszItemID == NULL)
{
LPOLESTR pszItemID = NULL;
hr = StringFromCLSID(_guidItemID, &_pszItemID);
}
if (SUCCEEDED(hr))
{
// Duplicate the item ID string for the caller.
hr = SHCoAllocString(_pszItemID, ppszItemID);
}
return hr;
}
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Целевая платформа | Windows |
Header | syncmgr.h |