Du musst beim Aufruf von SortItems die Klammern bei DokumenteVergleichen weglassen, denn du musst den Funktionszeiger übergeben, wie ich oben schon geschrieben habe, nicht den Rückgabewert eines Aufrufs.
Du kannst in DokumenteVergleichen nicht auf m_ctrlList zugreifen, weil die Vergleichsfunktion static sein muss, wie ich oben schon geschrieben habe. Überlicherweise übergibt man als zweiten Parameter entweder einen Zeiger auf das Steuerelement oder sein Elternfenster und holt das in der Vergleichsfunktion wieder raus.
Außerdem hat das Sortieren nichts mit der aktuellen Auswahlmarkierung zu tun. Wie gesagt:
Wie du daran die zu vergleichenden Einträge erkennst, und wie du darüber an die Daten kommst, die du für den Vergleich brauchst, darum musst du dich selbst kümmern. So lange du nicht jedem Eintrag mit SetItemData einen Wert zuweist, an dem du ihn erkennen kannst, wird das nichts.