профиль пользователя

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

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

профиль пользователя

Сообщение grigoreo » 16.02.2010 17:41:18

Уважаемые форумчане подскажите кто как кросплатформенно опеределяет профиль пользователя(в смысле путь до его домашней папки)?
Аватара пользователя
grigoreo
постоялец
 
Сообщения: 195
Зарегистрирован: 10.03.2009 15:43:43
Откуда: С нашей Раши

Re: профиль пользователя

Сообщение coyot.rush » 16.02.2010 17:59:14

Я делаю так
Код: Выделить всё
function get_home_path():string;
var
home:string;
begin
{$IFDEF LINUX}
Home:=GetEnvironmentVariable('HOME');
if home<>'' then
result:=home;
else
Result:= '';
{$ENDIF}
{$ifdef windows}
SetLength(home,MAX_PATH);
if shfolder.SHGetFolderPath(0,CSIDL_LOCAL_APPDATA,0,0,PChar(home))=0 then
begin
Result=Pchar(home)
end
else
Result := ''; 
{$endif}
end;
Аватара пользователя
coyot.rush
постоялец
 
Сообщения: 309
Зарегистрирован: 14.08.2009 08:59:48

Re: профиль пользователя

Сообщение Padre_Mortius » 16.02.2010 18:11:01

Код: Выделить всё
{$IFDEF LINUX}
Home:=GetEnvironmentVariable('HOME');
{$endif}
{$ifdef windows}
Home:=GetEnvironmentVariable('USERPROFILE')
{$endif}
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Re: профиль пользователя

Сообщение grigoreo » 17.02.2010 11:22:05

Padre_Mortius писал(а):
Код: Выделить всё
{$IFDEF LINUX}
Home:=GetEnvironmentVariable('HOME');
{$endif}
{$ifdef windows}
Home:=GetEnvironmentVariable('USERPROFILE')
{$endif}


этот пример лаконично короткий)), возьмем его за основу , спасибо всем за советы
Аватара пользователя
grigoreo
постоялец
 
Сообщения: 195
Зарегистрирован: 10.03.2009 15:43:43
Откуда: С нашей Раши

Re: профиль пользователя

Сообщение alexs » 17.02.2010 21:03:12

Для винды не забудь использовать функцию SysToUTF8 - чтобы потом небыло глупых вопрос про профиль с русскими буквами.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4060
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь


Вернуться в Lazarus

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

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

Рейтинг@Mail.ru