Mowgli
Joined: 25 Jun 2009 Posts: 11
|
(Separately) Posted: Mon Nov 16, 2009 09:25 Post subject: Странности с поиском в WFX плагине |
|
|
Может кому пригодится.
При написании своего плагина для распаковки архивов S.T.A.L.K.E.R.-а столкнулся с такой ситуацией. Поиск работал только в текущем каталоге. Начал копать и выяснил вот такую вещь. При поиске TC многократно опрашивает плагин на предмет содержания каталогов, начиная с текущего и затем всех вложенных. Делает это, как и при обычной навигации по дереву каталогов, с помощью вызовов FsFindFirst/FsFindNext. Однако при обычной навигации, когда ходишь по каталогам сам, то путь, передаваемый в FsFindFirst, никогда бэкслешем не заканчивается. При поиске же напротив, всегда в конце пути стоит бэкслеш за исключением самого первого вызова - для стартового каталога. Поэтому для вложенных и не работало.
Решил проблему конечно же просто. В начале вызова FsFindFirst искал в конце пути символ '\' и если находил, то укорачивал путь на один символ (за исключением корневого каталога конечно).
Такое поведение TC выглядит странным, тем более, что никакого упоминания о подобном я в документации не нашёл. Есть ли у кого-либо дополнительная информация по данному вопросу? Может, кто-то знает почему так или решал вопрос как-либо иначе? |
|