PathFileExistsW() и пробелы в путях
От: niXman Ниоткуда https://github.com/niXman
Дата: 20.10.17 11:18
Оценка:
привет!

не понимаю, чозанах %)

есть QString p = "c:\\Users\\nixman\\Desktop\\Новая папка\\p.exe"
конверчу ее в wchar_t pp[1024]; p.toWCharArray(pp); и передаю в ::PathFileExistsW(pp) и как результат — false и GetLastError() == 2

пробовал заменять пробелы на '\\ ' — без изменений.

как быть?
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Отредактировано 20.10.2017 11:37 niXman . Предыдущая версия .
Re: PathFileExistsW() и пробелы в путях
От: rumit7  
Дата: 20.10.17 11:54
Оценка: 7 (2) +1
Здравствуйте, niXman, Вы писали:

X>привет!


X>не понимаю, чозанах %)


X>есть QString p = "c:\\Users\\nixman\\Desktop\\Новая папка\\p.exe"

X>конверчу ее в wchar_t pp[1024]; p.toWCharArray(pp); и передаю в ::PathFileExistsW(pp) и как результат — false и GetLastError() == 2

X>пробовал заменять пробелы на '\\ ' — без изменений.


X>как быть?


путь заключить в кавычки или PathQuoteSpaces
Re[2]: PathFileExistsW() и пробелы в путях
От: CaptainFlint Россия http://flint-inc.ru/
Дата: 20.10.17 15:16
Оценка: +1
Здравствуйте, rumit7, Вы писали:

R>путь заключить в кавычки или PathQuoteSpaces


Разве с WinAPI пути требуется заключать в кавычки? До сих пор у меня с ними проблем не возникало.

Я бы скорее предположил, что дело не в пробелах, а в русских символах, которые не в ту кодировку вляпались.
Почему же, ё-моё, ты нигде не пишешь «ё»?
Re: PathFileExistsW() и пробелы в путях
От: ononim  
Дата: 20.10.17 17:35
Оценка: 4 (1) +1
Думаем: 2 — это значит file not found. Были бы проблемы с путем в целом — было бы 3.
Хм, а что если .... надо бы заглянуть в документацию. Находим там:

This function returns the actual length of the string in array.
Note: This function does not append a null character to the array.

Как много веселых ребят, и все делают велосипед...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.