FSF.ProcessName позволяет обработать некое имя файла: сравнить с маской, с масками или сгенерировать по маске новое имя.
size_t WINAPI ProcessName( const wchar_t *Param1, wchar_t *Param2, size_t Size, PROCESSNAME_FLAGS Flags );
| Действие | Описание | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| PN_CMPNAME | Сравнить имя файла с маской.Param1 соответствует Pattern, Param2 соответствует String, Size игнорируется.
Параметр Param1 может включать обычные допустимые в именах файлов символы, а также специальные выражения:
f*.ex?, маска *co* совпадает с color.ini и edit.com, маске
[c-ft]*.txt будут соответствовать config.txt, demo.txt, faq.txt и tips.txt.В случае успеха функция возвращает TRUE. | ||||||||
| PN_CMPNAMELIST | Сравнить имя файла со списком масок, перечисленных через запятую. Аналог предыдущего флага, только Param1 соответствует списку масок.
Size игнорируется. | ||||||||
| PN_SKIPPATH | Может сочетаться с PN_CMPNAME или PN_CMPNAMELIST - указывает на то, что путь к имени файла при сравнении должен игнорироваться. | ||||||||
| PN_GENERATENAME | Генерировать имя файла на основе существующего (Param1) и маски (Param2).
Результат записывается в Param2. Size должен содержать размер буфера с учётом завершающего \0.
Возвращаемое значение - необходимый размер буфера.Если нужно преобразовать только часть Param1, то можно указать размер этой части (может быть до 65535 символов) в Flags (добавить по принципу OR), например: Param1=L"dir1\\file1", а нам нужно изменить только
"dir1", тогда параметр Flags должен быть равен PN_GENERATENAME|4 | ||||||||
| PN_CHECKMASK | Проверить валидность маски. Param1 соответствует списку масок для проверки. | ||||||||
| PN_SHOWERRORMESSAGE | При проверке валидности маски (PN_CHECKMASK) выводить сообщение об ошибке. |
Flags