GetUserDir

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

GetUserDir

Сообщение hinst » 26.10.2009 21:07:00

Подскажите мне пожалуйста, как получить путь к папке пользователя "Мои документы" кроссплатформенно. GetUserDir возвращает под виндой немнго не то :roll:
Аватара пользователя
hinst
энтузиаст
 
Сообщения: 781
Зарегистрирован: 12.04.2008 18:32:38

Re: GetUserDir

Сообщение Padre_Mortius » 26.10.2009 23:38:34

Код: Выделить всё
SysUtils.GetEnvironmentVariable('MyDocuments')

Вроде так можно
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Re: GetUserDir

Сообщение hinst » 27.10.2009 20:28:03

Только что проверял - не работает вообще. Под виндой возвращает '' пустую строку
Аватара пользователя
hinst
энтузиаст
 
Сообщения: 781
Зарегистрирован: 12.04.2008 18:32:38

Re: GetUserDir

Сообщение Padre_Mortius » 27.10.2009 22:40:50

В переменных среды параметра "MyDocuments" нет, но данный параметр прописан в реестре системы. Значит отстается вариант брать данный путь из реестра системы

Добавлено спустя 15 минут 21 секунду:
И под линуксом данная папка не создается автоматически
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Re: GetUserDir

Сообщение hinst » 31.10.2009 13:29:58

Padre_Mortius: может быть ещё скажете мне по секрету, в какой ветке??
Аватара пользователя
hinst
энтузиаст
 
Сообщения: 781
Зарегистрирован: 12.04.2008 18:32:38

Re: GetUserDir

Сообщение Sergei I. Gorelkin » 31.10.2009 14:14:59

Не нужно этот путь брать из реестра, для получения путей к таким папкам предназначена функция ShGetFolderPath.
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
 
Сообщения: 1405
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Re: GetUserDir

Сообщение hinst » 31.10.2009 18:23:31

ShGetFolderPath это только для windows??
Аватара пользователя
hinst
энтузиаст
 
Сообщения: 781
Зарегистрирован: 12.04.2008 18:32:38

Re: GetUserDir

Сообщение Padre_Mortius » 31.10.2009 18:26:06

2 Sergei I. Gorelkin
Спасибо. Буду знать

2 hinst

Да. Это функция из библиотеки shFolder.dll
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 27

Рейтинг@Mail.ru