Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.05.2019, 13:34   #1
Korshi
Пользователь
 
Регистрация: 30.04.2019
Сообщений: 44
По умолчанию PathFileExistsA vs GetFileAttributesA

Добрый день!
Нужна функция, которая проверяет существование диска, папки, файла.
В интернете прочитал, что наиболее распространена для этой задачи Win32 API функция "GetFileAttributesA".
Но с точки зрения здравого смысла логичнее использовать "PathFileExistsA". Т.к. само название функции включает слово "Exists". Кроме того, у меня нет задачи узнать атрибуты папки, файла.

Что лучше использовать? В чём опасность (какие подводные камни) использования "PathFileExistsA"? Написано, что эта функция находится в специфической библиотеке и что нужен Internet Explorer.

Я планирую использовать функцию в Windows 7, Windows 10 и других новых версиях виндоуса, которые появятся в будущем.

При беглом тестировании разницы между этими двумя функция не нашёл: возвращают одинаковые ошибки при одинановых обстоятельствах.

Я пишу программу не на C и C++, поэтому встроенные инструменты этих языков мне недоступны.
Korshi вне форума Ответить с цитированием
Старый 06.05.2019, 13:56   #2
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,493
По умолчанию

Цитата:
Сообщение от Korshi Посмотреть сообщение
с точки зрения здравого смысла
Не тратьте время на пустые проверки, от которых ничего не зависит.
Делайте с файлом то, что вам нужно, и следите за ошибками.
waleri вне форума Ответить с цитированием
Старый 06.05.2019, 14:30   #3
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

И зачем A вместо W?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 06.05.2019, 14:34   #4
Korshi
Пользователь
 
Регистрация: 30.04.2019
Сообщений: 44
По умолчанию

У меня с W не работает. Я читал в интернете про A и W, но так и не понял смысла, т.к. я не C и C++ программист.
Korshi вне форума Ответить с цитированием
Старый 06.05.2019, 14:37   #5
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Причем тут С, W юникодные, А нет. А могут сломаться если в именах что-то за пределами 128 символов ASCII.
Какой язык-то?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 06.05.2019, 14:40   #6
Korshi
Пользователь
 
Регистрация: 30.04.2019
Сообщений: 44
По умолчанию

язык VBA
Korshi вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Где посмотреть список ошибок, возвращаемых PathFileExistsA? Korshi Win Api 16 30.04.2019 18:42