Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > Как узнать переменные окружения?


Автор: SkyHawk 15.9.2006, 04:47
Народ!
Чёй-то не выходит... и не входит...  smile 
В-общем так. Пытаюсь узнать переменную окружения через GetEnvironmentVariable(const *Char, *Char, long). Вроде все ОК, только не могу потом результат *Char преобразовать в AnsiString. Вылетает эксепшион. Если же пытаюсь работать через перегурженную функцию GetEnvironmentVariable(AnsiString), линкер ругается: unresolved external... Подскажите правильный порядок действий.

Автор: _hunter 15.9.2006, 10:35
код показывай...

Автор: sOckets 15.9.2006, 10:49
да нет , поздно , я уже бубен вытащил , и начинаю стучать....
оооо я вижу его код...#includ..тут н ясно...dows.h>...не ясно...
В общем код smile

Автор: dumb 15.9.2006, 10:51
Код

  char buf[4096];
  ::GetEnvironmentVariable( "PATH", buf, sizeof(buf) );
  AnsiString sPath = buf;


можно еще getenv пользовать, но суть та же...

Автор: pandrew 15.9.2006, 12:11
Может буфер маловат. Но проще взглянуть в отладчике, что в buf после вызова.

Автор: SkyHawk 15.9.2006, 17:54
Спасибо, dumb. Косяк мой заключался в том, что не указал границы буфера переменной (во загнул...   smile ). Ща буду пробовать...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)