Ok, i have a list view control that holds data like, artist names, music names, etc... and i have a std::vector<std::string>, that holds all the paths for the files that have X artist name or X music name. When, i sort the listview, std::vector canīt sort itself. So i tryed std::sort, but when i did that, i realized that i was sorting the name of the paths, not the name of the paths according (donīt know how to write this in english) to their respective artist names or music names. What could i do?

Code:
int CALLBACK ListViewCompareProc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort)
{
	cString String;
	static WCHAR szBuf1[50], szBuf2[50];
 
	ListView_GetItemText(Cont.ContainerhWnd, lParam1, lParamSort, szBuf1, sizeof(szBuf1));
	ListView_GetItemText(Cont.ContainerhWnd, lParam2, lParamSort, szBuf2, sizeof(szBuf2));

	return(strcmp(String.ToMultibyte(szBuf1, CP_ACP,0).c_str(), String.ToMultibyte(szBuf2, CP_ACP,0).c_str()));//DESCENDING ORDER
}
Thank you