Я использую API-интерфейс Windows Cloud Filter для написания поставщика синхронизации, но мои вызовы CfCreatePlaceholder всегда терпят неудачу.
Вот пример кода, который я запускаю после того, как мой поставщик все подключен:
CF_PLACEHOLDER_CREATE_INFO cInfo[1] = { 0 };
cInfo[0].RelativeFileName = L"testfile";
cInfo[0].FsMetadata.BasicInfo.FileAttributes = FILE_ATTRIBUTE_NORMAL | FILE_ATTRIBUTE_DIRECTORY;
cInfo[0].Flags = CF_PLACEHOLDER_CREATE_FLAG_NONE;
...
HRESULT ret = CfCreatePlaceholders(basePath, cInfo, 1, CF_CREATE_FLAG_STOP_ON_ERROR, &EntriesProcessed);
Я ожидаю, что CfCreatePlaceholder вернет S_OK, но вместо этого он возвращает 0x8007017C (ERROR_CLOUD_FILE_INVALID_REQUEST).Что я делаю не так?