П>А с чего его проверять? Проверяется результат вызова GetFileAttributesA на INVALID_FILE_ATTRIBUTES, и там всё нормасик.
Как я понял, был ещё и запуск без отладчика, где не очевидно по какому условию функция вернула false.
Поэтому имеет смысл хотя бы трассировку GetLastError() производить.
Добавлю также, что:
1) отладка может идти в другом security контексте, чем запуск без отладки, что может влиять на успешность чтения атрибутов
2) листинг родительской директории тоже требует иных прав, чем чтение метаданных отдельного подкаталога/файла
Впрочем ситуацию это не объясняет.