перечисление CF_OPERATION_TRANSFER_PLACEHOLDERS_FLAGS (cfapi.h)

Флаги для указания поведения при передаче заполнителя файла или каталога.

Синтаксис

typedef enum CF_OPERATION_TRANSFER_PLACEHOLDERS_FLAGS {
  CF_OPERATION_TRANSFER_PLACEHOLDERS_FLAG_NONE = 0x00000000,
  CF_OPERATION_TRANSFER_PLACEHOLDERS_FLAG_STOP_ON_ERROR = 0x00000001,
  CF_OPERATION_TRANSFER_PLACEHOLDERS_FLAG_DISABLE_ON_DEMAND_POPULATION = 0x00000002
} ;

Constants

 
CF_OPERATION_TRANSFER_PLACEHOLDERS_FLAG_NONE
Значение: 0x00000000
Флаги заполнителя передачи не передаются.
CF_OPERATION_TRANSFER_PLACEHOLDERS_FLAG_STOP_ON_ERROR
Значение: 0x00000001
Вызывает немедленное возвращение API, если передача заполнителя завершается ошибкой. Если передача завершается ошибкой, код ошибки будет возвращен.
CF_OPERATION_TRANSFER_PLACEHOLDERS_FLAG_DISABLE_ON_DEMAND_POPULATION
Значение: 0x00000002
Отключает население по запросу для каталога, предотвращая дальнейшие CF_CALLBACK_TYPE_FETCH_PLACEHOLDERS обратных вызовов.

ВАЖНЫЙ

Без этого флага обратный вызов заполнителей передачи будет вызываться многократно (потенциально 100+ раз), так как система продолжает запрашивать заполнители по запросу. Поставщики должны задать этот флаг, чтобы указать, что все заполнители были созданы, и дальнейшие обратные вызовы не требуются.

Когда поставщик завершит создание всех заполнителей в каталоге, он должен пометить каталог как полностью заполненный, задав флаг CF_OPERATION_TRANSFER_PLACEHOLDERS_FLAG_DISABLE_ON_DEMAND_POPULATION . Это предотвращает повторное вызов CF_CALLBACK_TYPE_FETCH_PLACEHOLDERS обратного вызова для этого каталога. Как правило, поставщик должен задать этот флаг после того, как он положил все заполнители в каталоге, или если текущий вызов CF_OPERATION_TYPE_TRANSFER_PLACEHOLDERS должен создать все остальные заполнители.

Поставщик может задать этот флаг в любое время, и он будет учитываться платформой, если во время текущего вызова CF_OPERATION_TYPE_TRANSFER_PLACEHOLDERS:

1. TransferPlaceholders.PlaceholderTotalCount<= (сумма предыдущего TransferPlaceholders.EntriesProcessed) + текущий TransferPlaceholders.PlaceholderCount.
1. Все текущие TransferPlaceholders.PlaceholderCount заполнители успешно созданы.

Например, если поставщик должен передать десять заполнителей, он может передать и задать CF_OPERATION_TRANSFER_PLACEHOLDERS_FLAG_DISABLE_ON_DEMAND_POPULATION одним из следующих способов.

Это может сделать:

1. Задать,4TransferPlaceholders.PlaceholderCount = задать = 5TransferPlaceholders.PlaceholderTotalCount и задать значение .FlagsNONE
1. Задать,4TransferPlaceholders.PlaceholderCount = задать = 9TransferPlaceholders.PlaceholderTotalCount и задать значение .FlagsNONE
1. Задать,2TransferPlaceholders.PlaceholderCount = задать = 11TransferPlaceholders.PlaceholderTotalCount и задать значение .FlagsNONE
1. Задать,0TransferPlaceholders.PlaceholderCount = задать = 10TransferPlaceholders.PlaceholderTotalCount и задать значение .FlagsCF_OPERATION_TRANSFER_PLACEHOLDERS_FLAG_DISABLE_ON_DEMAND_POPULATION

Или это может сделать следующее:

1. Задать,4TransferPlaceholders.PlaceholderCount = задать = 5TransferPlaceholders.PlaceholderTotalCount и задать значение .FlagsNONE
1. Задать,4TransferPlaceholders.PlaceholderCount = задать = 9TransferPlaceholders.PlaceholderTotalCount и задать значение .FlagsNONE
1. Задать,2TransferPlaceholders.PlaceholderCount = задать = 10TransferPlaceholders.PlaceholderTotalCount и задать значение .FlagsCF_OPERATION_TRANSFER_PLACEHOLDERS_FLAG_DISABLE_ON_DEMAND_POPULATION

Требования

Требование Ценность
Минимальный поддерживаемый клиент Windows 10 версии 1709 [только классические приложения]
минимальный поддерживаемый сервер Windows Server 2016 [только классические приложения]
Header cfapi.h

См. также

CF_CALLBACK_TYPE

CF_OPERATION_TYPE

CfExecute