3

重複の可能性:
Windows エクスプローラのように Delphi でソート順を取得する方法は?

Windows エクスプローラーとまったく同じように (ファイルの並べ替えのために) 比較する関数を探しています。今はCompareText関数を使用していますが、結果は次のようになります。

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

そして、Windows エクスプローラーは同じ項目をこのように並べ替えます (それが私が取得したいものです):

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

この種の比較のための関数はありますか、それとも自分で処理する必要がありますか?

ありがとう!

4

1 に答える 1

7

Windows エクスプローラーはStrCmpLogicalW、ファイル名を比較するために使用します。RTL/VCL はこの関数を宣言していないため、自分で行う必要があります。

function StrCmpLogicalW(psz1, psz2: PWideChar): Integer; stdcall;
    external 'shlwapi.dll';
于 2012-04-11T15:13:07.513 に答える