![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| php5 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 272 Регистрация: 15.8.2007 Репутация: нет Всего: нет |
Нужно определить путь к Temp директории, для этого юзаю функцию
Теперь мне нужно полученный путь передать в переменную типа string |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 12 Всего: 459 |
В общем случае это не получиться. Я одно время делал так
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| php5 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 272 Регистрация: 15.8.2007 Репутация: нет Всего: нет |
а как из tstring в string ?
|
|||
|
||||
| kuzulis |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 154 Регистрация: 5.9.2007 Репутация: нет Всего: 1 |
Можешь просто использовать GetTempPathA, тогда в string без проблем. |
|||
|
||||
| EgoBrain |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 537 Регистрация: 23.3.2008 Где: Комната Репутация: нет Всего: 2 |
Это можно сделать используя выходной строковый поток ostringstream:
Только прежде чем использовать дождись комментариев экспертов, а то они еще могут тухлыми помидорами закидать |
|||
|
||||
| akizelokro |
|
|||
![]() Крокодил ![]() ![]() Профиль Группа: Участник Сообщений: 761 Регистрация: 30.7.2007 Репутация: 1 Всего: 5 |
wcstombs (хоть статью уже пиши)
а GetTempDirA тоже должно сработать. -------------------- a = a + b; b = a - b; a = a - b; |
|||
|
||||
| akizelokro |
|
|||
![]() Крокодил ![]() ![]() Профиль Группа: Участник Сообщений: 761 Регистрация: 30.7.2007 Репутация: 1 Всего: 5 |
Притом, сама постановка вопроса некорректна. В зависимости от директив препроцессова tstring уже либо string (без Юникода), либо wstring (c Юникодом).
так что код должен звучать так
-------------------- a = a + b; b = a - b; a = a - b; |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 12 Всего: 459 |
Остается еще выяснить в какой локали нужно преобразовывать и совсем все будет хорошо. В общем случае, если преобразовывать юникод к анси, такая кака может получиться. Поэтому, или везде TCHAR или везде wchar_t/char . Всякие переходы чреваты кракозяблами. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| akizelokro |
|
||||
![]() Крокодил ![]() ![]() Профиль Группа: Участник Сообщений: 761 Регистрация: 30.7.2007 Репутация: 1 Всего: 5 |
Пусть делает в текущей локали (даже пусть не указывает). Когда он решит писать на экспорт, тогда и будет заморачиваться. Сейчас же я не думаю, что ему интересно, как китайцы или арабы увидят надписи в его программе Добавлено через 4 минуты и 3 секунды
К тому же, от таких переходов никуда не деться. кой-где в майкрософте понасованы такие подводные камни, что проект в Юникоде, а вот в функцию надо передавать параметры в мультибайте. Или наоборот. Вот сейчас как рза такую задачку делаю. -------------------- a = a + b; b = a - b; a = a - b; |
||||
|
|||||
| php5 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 272 Регистрация: 15.8.2007 Репутация: нет Всего: нет |
Всем спасибо за коменты, пока что остановлюсь на GetTempPathA
|
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 12 Всего: 459 |
Единственное где такое встречал, это GetProcAddress, но экспорт может быть только в ASCII кодировки без расширения, так что там пофигу. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| akizelokro |
|
|||
![]() Крокодил ![]() ![]() Профиль Группа: Участник Сообщений: 761 Регистрация: 30.7.2007 Репутация: 1 Всего: 5 |
Вот сейчас только тема изменения ресурсов в экзешнике с помощью Begin/UpdateResource. Часть ресурсов только в юникоде, часть строго бинарные данные. Как-то, кажется, совсем недавно, я попал на функции установки прокси в urlmon.h. Проект на юникоде, а пока не сбросил туда обычные строки, что-то не работало). Да и постоянно такие фенечки встречаются. А уж если цеплять обращения к html-ресурсам с различными парсерами и тому подобное, то руку на таких ещах можно набить достаточно просто. И ещё хорошо, если переносишь какуюнибудь либу с юникса на винду и она правильно написана. А то ведь получится связывать вещи в совершенно разных кодировках порой. А если брать ещё и ActiveX, то там в дополнение к прочим мелочам (помимо CString) выползают и BSTR. -------------------- a = a + b; b = a - b; a = a - b; |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |