![]() |
|
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]()
|
|
| Alca |
|
||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3993 Регистрация: 14.6.2006 Репутация: 5 Всего: 50 |
Вопрос по ::GetPrivateProfileString.
Как узнать, что размера входного буфера мал для хранения значения ключа (в определенной секции)? Добавлено @ 12:53
Так? Добавлено @ 12:59 не так Это сообщение отредактировал(а) Alca - 9.4.2010, 13:01 |
||||
|
|||||
| GremlinProg |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: 99 Всего: 106 |
сам сталкивался - ни как, если хочешь универсальное чтение строки или списка строк из ini-файла, то только последовательным наращиванием буфера, пока число скопированных символов не станет четко меньше числа переданных символов, учитывая терминаторы для обоих видов результата: единичной строки и списка строк, т.е. в идеале это неравенство должно быть четко меньше минимум на 2 символа -------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
| Alca |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3993 Регистрация: 14.6.2006 Репутация: 5 Всего: 50 |
Типа так?
Это сообщение отредактировал(а) Alca - 9.4.2010, 14:00 |
|||
|
||||
| GremlinProg |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: 99 Всего: 106 |
ну да,
а еще лучше будет выделить отдельную функцию со статическим буфером, который увеличивать по мере необходимости (но не уменьшать) p.s.:только надо помнить, что этот вариант потоконебезопасен (безопасным он будет либо с критической секцией, либо с TlsAlloc/Get/Free) -------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
| Alca |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3993 Регистрация: 14.6.2006 Репутация: 5 Всего: 50 |
Я наверное чего-то не понял? std::string (tString) походу это делает. Это сообщение отредактировал(а) Alca - 9.4.2010, 14:07 |
|||
|
||||
| Alca |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3993 Регистрация: 14.6.2006 Репутация: 5 Всего: 50 |
IniFiles.pas, CG 2010:
Это сообщение отредактировал(а) Alca - 11.4.2010, 13:45 |
|||
|
||||
![]()
|
| Правила форума "C/C++: Системное программирование и WinAPI" | |
|
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |