|
0 / 0 / 2
Регистрация: 26.11.2012
Сообщений: 55
|
||||||
MAX_PATH+112.06.2013, 17:02. Показов 9676. Ответов 13
Метки нет (Все метки)
Добрый день форумчане!
Хотелось бы узнать что делает этот код...
0
|
||||||
| 12.06.2013, 17:02 | |
|
Ответы с готовыми решениями:
13
StringToWideChar (s, pWCBuff, Max_Path) = UTF8 {True} Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Ушел с форума
|
|
| 12.06.2013, 17:36 | |
|
Получает путь к папке для хранения временных файлов.
1
|
|
|
|
||||
| 12.06.2013, 17:48 | ||||
|
Правильно будет записать вот так
1
|
||||
|
0 / 0 / 2
Регистрация: 26.11.2012
Сообщений: 55
|
|
| 12.06.2013, 18:35 [ТС] | |
|
Ясненько, спасибо!
0
|
|
|
Brainsbreaker
899 / 374 / 54
Регистрация: 01.02.2011
Сообщений: 1,608
|
||
| 13.06.2013, 20:17 | ||
|
-=ЮрА=-, а чем так будет правильно? В MSDN об этом ясно сказано:
1
|
||
|
0 / 0 / 2
Регистрация: 26.11.2012
Сообщений: 55
|
|
| 13.06.2013, 20:23 [ТС] | |
|
Ммм.... то-есть первоначальный вариант был правильным?
0
|
|
|
Ушел с форума
|
||
| 13.06.2013, 20:33 | ||
|
максимум TEMP_PATH символов (260). Плюс один символ нужен для завершающего нуля.
0
|
||
|
Brainsbreaker
899 / 374 / 54
Регистрация: 01.02.2011
Сообщений: 1,608
|
|
| 13.06.2013, 20:35 | |
|
kciosdse, а ты как считаешь? Даже если ты в чем-то и не уверен, то это можно проверить.
0
|
|
|
|
||
| 13.06.2013, 21:45 | ||
|
Digit@ll, тем что в строке следует выделять память под нуль терминатор и тем что длинна максимального файлового имени умещается именно в MAX_PATH, а MAX_PATH + 1 подрахзумевает +1 как раз на приславутій символ конца строки, если ты об этом не знал, мне тебя жаль...
http://msdn.microsoft.com/en-u... s.85).aspx The maximum possible return value is MAX_PATH+1 (261). - MAX_PATH на имя и 1 на нуль терминатор.
0
|
||
|
Ушел с форума
|
|||
| 13.06.2013, 22:48 | |||
|
Naming Files, Paths, and Namespaces
Но тогда мне непонятны две вещи. 1) При каких условиях GetTempPath может вернуть MAX_PATH+1 ? Ведь нуль-терминатор уже учтен в MAX_PATH, а дополнительное место зачем тогда нужно ? Для второго нуль-терминатора ? 2) Из Вашего примера не ясно, какой смысл выделять буфер размером MAX_PATH+1, а в функцию передавать его размер, как MAX_PATH. Ведь получается, что последний символ буфера функция так или иначе не затронет. P.S. Кстати, в небезызвестных исходниках Win2K везде по коду с GetTempPath встречается именно MAX_PATH, а не MAX_PATH+1.
2
|
|||
|
|
|
| 13.06.2013, 23:00 | |
|
Убежденный, тут всё просто MAX_PATH отвечает за наполнение строки, т.е любой файловый объект (абсолютно любой) умещается в указанную длину. +1 отвечает за нуль терминатор. Если объявить строку
new TCHAR[MAX_PATH]; то будет происходить потеря одного разряда (веду речь о рассматриваемом динамическом аллоке), а именно MAX_PATH, если же объявляем длинну MAX_PATH + 1 то размера блока как раз хватит умести длинну имени и 0лик который добросится, если же установить GetTempPath(MAX_PATH+1, lpTempPath); то выходит что в строке MAX_PATH+1 значимых символов + ещё 1 нуль терминатор. Не по теме: ЗЫ:Косвенный фактор в пользу MAX_PATH без +1 - если было бы необходимо умещать объекты с длинами имён MAX_PATH+1 то неужели бы мелокософтовцы не могли задефайнить define MAX_PATH 261. Добавлено через 1 минуту
0
|
|
|
Ушел с форума
|
|||
| 13.06.2013, 23:11 | |||
|
MAX_PATH - это, согласно MSDN, буква диска (один символ), двоеточие (еще один), обратный слэш (еще один, итого уже три), потом оставшаяся часть пути, не больше 256 символов (итого получается 259), и завершающий нуль. Всего получается 260, в точности соответствуя значению константы MAX_PATH. чем ей разрешить. Указали MAX_PATH - она запишет максимум 260, включая нуль. У Вас в примере получается так: буфер выделяется в MAX_PATH+1, а в функцию передается MAX_PATH, на один меньше. Оставшийся символ функция не затронет ни при каких обстоятельствах.
1
|
|||
|
Brainsbreaker
899 / 374 / 54
Регистрация: 01.02.2011
Сообщений: 1,608
|
||
| 13.06.2013, 23:47 | ||
|
Ладно Юра, угомонись.
Не по теме: Снова каждый остался при своем.
0
|
||
| 14.06.2013, 00:09 | |
|
Не по теме: Digit@ll, послушай, давай на чистоту - ты не эйс чтобы писать мне угомонись: пару постов выше написал непроверенную инфу с плевком в мою сторону, а теперь делаешь слив и пишешь угомонись. Угомонись лучше с мелкими под*ёбчиками, которыми ты пытаешся полить меня какой на форуме, не выйдет, калибр маловат дружище;)
0
|
|
|
Новые блоги и статьи
|
|||
|
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
|
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений.
9TO2GP2bpX4
a42b81fb172ffc12ca589c7898261ccb/
https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/
Слева синяя линия -. . .
|
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. .
Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
|
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-text-sdl3-c. zip
finish-text-sdl3-cpp. zip
|
|
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
|
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo
Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло.
Но на выплатах по больничным это. . .
|
Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере нетипового документа выдачи шин для спецтехники с табличной частью, разработанного в конфигурации КА2. Данные берутся из. . .
|
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y
Z4Tv2zpXVVo
https:/ / github. com/ shumilovas/ med2. git
|