Выход:
The first file found is LOG_09.TXT
Next file name is LOG_10.TXT
Next file name is LOG_11.TXT
Next fi (cut off word "file"?)
Функция:
//Find last modified log file
hFind = FindFirstFile("..\\..\\LOGS\\LOG*.TXT", &FindFileData);
if (hFind == INVALID_HANDLE_VALUE)
{
printf ("FindFirstFile failed (%d)\n", GetLastError());
return;
}
else
{
printf("The first file found is %s<br>",FindFileData.cFileName);
//List all the other files in the directory.
while (FindNextFile(hFind, &FindFileData) != 0)
{
printf ("Next file name is %s<br>", FindFileData.cFileName); //NOT DISPLAYING ALL NAMES CONSISTENTLY??
}
dwError = GetLastError();
FindClose(hFind);
if (dwError != ERROR_NO_MORE_FILES)
{
printf ("FindNextFile error. Error is %u.\n", dwError);
return (-1);
}
}
Слово "файл" фактически прервано в моем printf. Иногда он отображает все имена файлов, иногда отображает несколько, иногда он даже не заканчивает строку в кавычке printf, как показано выше. Что является причиной этого, и меня вводит в заблуждение функциональность printf? В отладчике все выглядит нормально, но я хочу быть уверенным и понять это. Например, у меня нет нулевого символа после того, как я в файле правильно? Почему его здесь отключают? Благодарю.
РЕДАКТИРОВАТЬ: Неправильно - Однопоточная библиотека приложений. (Раньше был многопоточным, извините)
печать в файл дает полный список файлов, в то время как printf одновременно "нестабилен". Не уверен, что понимаю почему ....