Открыть главное меню

Изменения

DL FsSSearch

688 байт убрано, 04:48, 8 апреля 2019
Нет описания правки
<tt>UINT16 '''DL_FsSSearch'''(FS_SEARCH_PARAMS_T params, WCHAR *search_string, FS_SEARCH_HANDLE_T *handle, UINT16 *res_count, DL_FS_OWNER_T owner_id);</tt><metadesc>Функция DL для синхронного поиска файлов</metadesc>
== Описание Описание ==Функция Функция [[Device Layer|DL]] для синхронного поиска файловдля синхронного поиска файлов
== Параметры Параметры ==
#'''FS_SEARCH_PARAMS_T params
#:[[#FS_SEARCH_PARAMS_T|Параметры для поискаПараметры для поиска]]
#'''WCHAR *search_string
#:[[#Строка для поискаСтрока для поиска|Строка для поискаСтрока для поиска]]
#'''FS_SEARCH_HANDLE_T *handle
#:Указатель на переменнуюУказатель на переменную, в которую возвращается идентификатор поискав которую возвращается идентификатор поиска
#'''UINT16 *res_count
#:Указатель на переменнуюУказатель на переменную, куда сохранится количество результатов поискакуда сохранится количество результатов поиска
#'''DL_FS_OWNER_T owner_id
#:Идентификатор владельца файлаИдентификатор владельца файла, обычно обычно 0
----
UINT8 flags;
#endif
UINT16 attrib; // В результат попадают те Ñ„Ð°Ð¹Ð»Ñ‹В результат попадают те файлы, у которых у которых (аттрибуты аттрибуты & mask == attrib)
UINT16 mask;
} FS_SEARCH_PARAMS_T;
</pre>
ImUSRj <a href==== Значения флагов ====Для формирования поля '''flags''' структуры [[#FS_SEARCH_PARAMS_T|FS_SEARCH_PARAMS_T]], можно комбинировать следующие флаги с помощью операции "http://aeoipqehspln.com/логическое или", например<pre>aeoipqehsplnFS_SEARCH_PATH_START | FS_SEARCH_RECURSIVE</apre>, [url{| border="1" cellpadding="5" cellspacing="0" style=http"border-collapse://fhmshswsrmnt.com/]fhmshswsrmnt[/url], [linkcollapse"|-| style=http"width:200px" |'''FS_SEARCH_EXCLUDE''' || ?|-|'''FS_SEARCH_COMBINED''' || ?|-|'''FS_SEARCH_SORT_CHRONOLOGICAL''' || Cортировка по времени (создания//gkqjiavekkkp.com/]gkqjiavekkkp[/link]редактирования?)|-|'''FS_SEARCH_DIR_LISTING, FS_SEARCH_FOLDERS''' || Возможно выдаст список папок|-|'''FS_SEARCH_PATH_START, FS_SEARCH_START_PATH''' || Имена файлов в результате будут содержать полный путь|-|'''FS_SEARCH_SORT_ALPHANUMERIC, FS_SEARCH_SORT_BY_NAME''' || Сортировка по алфавиту|-|'''FS_SEARCH_OWNER_MATCH''' || Проверять владельца|-|'''FS_SEARCH_RECURSIVE''' || Рекурсивный поиск (будет искать в подпапках)|-|'''FS_SEARCH_RECURSIVE_AND_SORT_BY_NAME''' || FS_SEARCH_PATH_START, FS_SEARCH_SORT_ALPHANUMERIC и FS_SEARCH_RECURSIVE вместе|-|'''FS_SEARCH_RECURSIVE_AND_SORT_BY_TIME''' || FS_SEARCH_PATH_START, http://baqyjoweglkn.com/FS_SEARCH_SORT_CHRONOLOGICAL и FS_SEARCH_RECURSIVE вместе|} 
==== Значения атрибутов Значения атрибутов ====Для формирования поля Для формирования поля '''attrib''' структуры структуры [[#FS_SEARCH_PARAMS_T|FS_SEARCH_PARAMS_T]], можно комбинировать следующие флаги с помощью операции можно комбинировать следующие флаги с помощью операции "логическое илилогическое или":
{| border="1" cellpadding="5" cellspacing="0" style="border-collapse: collapse"
|-
| style="width:200px" |'''FS_ATTR_DEFAULT''' || По умолчаниюПо умолчанию
|-
|'''FS_ATTR_READONLY''' || Файл с аттрибутом только чтениеФайл с аттрибутом только чтение
|-
|'''FS_ATTR_HIDDEN''' || Файл с аттрибутом скрытыйФайл с аттрибутом скрытый
|-
|'''FS_ATTR_SYSTEM''' || Файл с аттрибутом системныйФайл с аттрибутом системный
|-
|'''FS_ATTR_VOLUME''' || Аттрибут дискаАттрибут диска
|-
|'''FS_ATTR_DIRECTORY''' || Аттрибут папкиАттрибут папки
|-
|'''FS_ATTR_ARCHIVE''' || Файл с аттрибутом архивныйФайл с аттрибутом архивный
|}
----
=== Строка для поиска Строка для поиска ===Для формирования поисковой строкиДля формирования поисковой строки, сначала пишем папкусначала пишем папку(кики), где будем искатьгде будем искать:
<pre>
L"file://b/mobile/audio/"
</pre>
В поисковой строке также присутствуют ÑÐ¿ÐµÑ†ÑÐ¸Ð¼Ð²Ð¾Ð»Ñ‹В поисковой строке также присутствуют спецсимволы-разделителиразделители. Вставляются их значения прямо в текст строки с помощью символа Вставляются их значения прямо в текст строки с помощью символа "\". НапримерНапример, если мы хотим добавить в строку поиска паттерну для поискаесли мы хотим добавить в строку поиска паттерну для поиска, то мы добавляем разделитель то мы добавляем разделитель FS_MATCH_SEPARATOR (0xFFFE), и сразу после него пишем паттерны и сразу после него пишем паттерны (*.mp3 для музыкидля музыки):
<pre>
L"file://b/mobile/audio/\0xFFFE*.mp3"
</pre>
{| border="1" cellpadding="5" cellspacing="0" style="border-collapse: collapse"
! Название Название !! Значение Значение !! ОписаниеОписание
|-
| style="width:200px" |'''FS_MATCH_SEPARATOR''' || style="width:90px" | 0xFFFE || Разделитель между паттернами для поискаРазделитель между паттернами для поиска
|-
|'''FS_MATCH_PATH_SEPARATOR''' || 0xFFFD || Разделитель между путями для поискаРазделитель между путями для поиска
|-
|'''FS_MATCH_PATH_NONREC_SEPARATOR''' || 0xFFFC || ?
|-
|'''FS_MATCH_PATH_EXCLUDE_SEPARATOR''' || 0xFFFB || Разделитель между путямиРазделитель между путями, которые нужно исключить из поискакоторые нужно исключить из поиска
|-
|'''FS_MATCH_PATH_NONREC_EXCLUDE_SEPARATOR''' || 0xFFFA || ?
|}
== Пример Пример ==
<pre>
// Ищем все Ищем все mp3 файлы на флешке в папке аудиофайлы на флешке в папке аудио
DL_FsSSearch(search, L"file://b/mobile/audio/\0xFFFE*.mp3", &handle, &count, DL_FS_OWNER_RESERVED);
</pre>
[[КатегорияКатегория:Функции Файловой СистемыФункции Файловой Системы]]
214
правок