Поделиться через


Функция CfSetPinState (cfapi.h)

Это задает состояние закрепления заполнителя, используемого для представления намерения пользователя. Любое приложение (а не только поставщик синхронизации) может вызывать эту функцию.

Синтаксис

HRESULT CfSetPinState(
  [in]                HANDLE           FileHandle,
  [in]                CF_PIN_STATE     PinState,
  [in]                CF_SET_PIN_FLAGS PinFlags,
  [in, out, optional] LPOVERLAPPED     Overlapped
);

Параметры

[in] FileHandle

Дескриптор файла заполнителя. Платформа правильно синхронизирует операцию с другими активными запросами. Достаточно атрибута или дескриптора без доступа. Вызывающий объект должен иметь READ_DATA или WRITE_DAC доступ к заполнителю, в противном случае операция завершится сбоем с STATUS_CLOUD_FILE_ACCESS_DENIED.

[in] PinState

Состояние закрепления файла заполнителя. Список допустимых значений PinState см. в разделе CF_PIN_STATE.

[in] PinFlags

Флаги состояния закрепления. Для pinFlags можно задать следующие значения:

  • Если указано CF_PIN_FLAG_RECURSE , платформа применяет состояние закрепления к FileHandle и каждому файлу рекурсивно (применимо только в том случае, если FileHandle является дескриптором каталога).
  • Если указан CF_PIN_FLAG_RECURSE_ONLY , платформа применяет состояние закрепления к каждому файлу рекурсивно под FileHandle, но не к самому FileHandle .
  • Если указан CF_PIN_FLAG_RECURSE_STOP_ERROR , платформа остановит рекурсию при первой ошибке. В противном случае платформа пропускает ошибку и продолжает рекурсию.

[in, out, optional] Overlapped

Позволяет выполнять вызов асинхронно. Дополнительные сведения см. в разделе Примечания .

Возвращаемое значение

Если эта функция выполняется успешно, она возвращает .S_OK В противном случае возвращается код ошибки HRESULT .

Комментарии

Если этот параметр указан и в сочетании с асинхронным FileHandle, параметр Overlapped позволяет платформе выполнять вызов асинхронно.

Вызывающий объект должен инициализировать перекрываемую структуру с событием для ожидания. Если возвращается HRESULT_FROM_WIN32(ERROR_IO_PENDING), вызывающий объект может подождать с помощью GetOverlappedResult. Если не указано, платформа будет выполнять вызов API синхронно, независимо от того, как был создан дескриптор.

Требования

Требование Значение
Минимальная версия клиента Windows 10, версия 1709 [только классические приложения]
Минимальная версия сервера Windows Server 2016 [только классические приложения]
Целевая платформа Windows
Header cfapi.h
Библиотека CldApi.lib
DLL CldApi.dll

См. также раздел

GetOverlappedResult

CF_PIN_STATE

CF_SET_PIN_FLAGS