Это довольно интересный вопрос. Я отладил его на Win 7 64 Bit в код ассемблера ListBox_DirHandler comctl32.dll и обнаружил, что Windows делает что-то вроде этого (просто упрощенный код):
// attr is the low word of the parameter passed to CComboBox::Dir.
attr &= FILE_ATTRIBUTE_READONLY|FILE_ATTRIBUTE_HIDDEN|FILE_ATTRIBUTE_SYSTEM|FILE_ATTRIBUTE_DIRECTORY|FILE_ATTRIBUTE_ARCHIVE|FILE_ATTRIBUTE_NORMAL;
attr |= FILE_ATTRIBUTE_ARCHIVE|FILE_ATTRIBUTE_NORMAL|FILE_ATTRIBUTE_READONLY;
WIN32_FIND_DATA finddata;
FindFirstFile(..., &finddata)
while(...) {
if(finddata.dwFileAttributes == FILE_ATTRIBUTE_COMPRESSED)
finddata.dwFileAttributes = FILE_ATTRIBUTE_NORMAL;
if(finddata.dwFileAttributes & attr) {
// some more checks and then might add the file name to the control;
}
FindNextFile(..., &finddata);
}
Проблема в том, что ваш файл возвращается с finddata.dwFileAttributes==FILE_ATTRIBUTE_NOT_CONTENT_INDEXED
. При входе в функцию attr изменяется так, что никогда не может быть установлен FILE_ATTRIBUTE_NOT_CONTENT_INDEXED, поэтому if внутри цикла никогда не будет истинным, а имя файла никогда не будет добавлено в элемент управления.
Извините, но, насколько я вижу, вам придется дождаться исправления MS или выполнить работу самостоятельно.