Есть ли функция сравнения для сортировки имен файлов? [дубликат]


Возможный дубликат:
Как получить порядок сортировки в Delphi, как в Проводнике Windows?

Я ищу функцию, которая бы сравнивала (для сортировки файлов) точно так же, как это делает Проводник Windows. Теперь я использую функцию CompareText, но это приводит к следующему:

---------  /  ---------
 AFile
 BFile
 _XFile
-----------------------

И Проводник Windows сортируют те же элементы следующим образом (это то, что я хочу получить):

---------  /  ---------
 _XFile
 AFile
 BFile
-----------------------

Есть ли функция для такого рода сравнения или я должен обрабатывать это с помощью моя собственная ?

Спасибо!

1 2

1 ответ:

Проводник Windows использует StrCmpLogicalW Для сравнения имен файлов. RTL/VCL не объявляет эту функцию, поэтому вам нужно сделать это самостоятельно.

function StrCmpLogicalW(psz1, psz2: PWideChar): Integer; stdcall;
    external 'shlwapi.dll';