С Новым годом! Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 21.01.2015
Сообщений: 21
1

Возвращение пути до APPDATA

05.03.2016, 06:56. Показов 2078. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, пытался разобраться с возвращением пути до APPDATA, пробовал getenv(), _dupenv_s(), не помогало, выдавало ошибки, решил использовать SHGetFolderPath()...
Код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
...
 
char* СAppDataPath(){ // Get Appdata path
    char Apath[MAX_PATH];
    if (SUCCEEDED(SHGetFolderPath(NULL, CSIDL_APPDATA, NULL, 0, Apath)))
        return Apath;
    else
        return 0;
}
 
...
void main(){
 
...
 
    char* APPDATA = СAppDataPath();
    std::cout << APPDATA;
 
...
В итоге возвращает вместо пути до APPDATA вот это:
Возвращение пути до APPDATA
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.03.2016, 06:56
Ответы с готовыми решениями:

Возможно ли возвращение функцией двух значений? Именно возвращение, не ссылка или указатель
Нужна функция в которую забиваешь два числа и сначала она возвращает минимальное, после...

Возвращение пути в переменную при интерактивном сохранении файла (в ворде)
Как при интерактивном сохранении файла(в ворде) сделать так чтобы путь к этому файлу вернулся в...

Книга "Конечный автомат 2: Возвращение". Часть 1. Разбор. Глава 8. Имя, проверка строки и разбор до. На том ли я пути?
Наверное, иногда прилюдно выругаться полезно... Стоило мне в предыдущей теме написать...

Путь к AppData
Нужно открыть файл(путь c:\Users\Игровой\AppData\Roaming\qwerty(диск системный). uses SHFolder;...

1
903 / 424 / 159
Регистрация: 02.04.2014
Сообщений: 1,206
05.03.2016, 10:48 2
Наверное потому что функция СAppDataPath возвращает указатель на локальный адрес.
Попробуй написать так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
TCHAR* СAppDataPath()
{ // Get Appdata path
    static TCHAR Apath[MAX_PATH];
    if (SUCCEEDED(SHGetFolderPath(NULL, CSIDL_APPDATA, NULL, 0, Apath)))
        return Apath;
    else return 0;
}
 
int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])
{
    ...
    TCHAR *pAPPDATA  = СAppDataPath();
    wprintf(pAPPDATA);
    ...
}
0
05.03.2016, 10:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.03.2016, 10:48
Помогаю со студенческими работами здесь

Найти файл в %appdata%
Добрый день. Мне нужно обнаружить файл, который находится в %appdata%, а так как эта папка...

Папка Ethash в appdata
C:\Users\AlekseyPC\AppData\Local\Ethash файлы занимают много места ещё есть это...

Получить %appdata% юзера
Здравствуйте, возникла следующая проблема: запущена служба c аккаунта Local Service, хочется...

Копирование файла из %AppData%
Подскажите пожалуйста как можно узнать путь к %APPDATA%, не зная при этом имя юзера, а далее...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru