CompareStringという関数がある。
CString input_string = "...";
// アルファベット順にソートして格納
POSITION tmp_pos = output_cstringlist.GetHeadPosition();
while( tmp_pos ){
POSITION bk_tmp_pos = tmp_pos;
CString tmp_cstring = output_cstringlist.GetNext(tmp_pos);
if( CSTR_GREATER_THAN == CompareString(LOCALE_SYSTEM_DEFAULT,NORM_IGNORECASE,tmp_cstring,tmp_cstring.GetLength(),input_string,input_string.GetLength()) ){
output_cstringlist.InsertBefore(bk_tmp_pos,fnm);
tmp_pos = bk_tmp_pos; // AddTail()させないように
break;
}
}
if( tmp_pos == NULL ){
output_cstringlist.AddTail( fnm );
}