Всем привет! Ситуация следующая: Меняю в реестре переменную окружения. Запускаю прогу, которая должна смотреть на эту переменную (в частности Visual Studio 7). А прога видит почему-то предыдущее значение. Проблема решается только ребутом. Может кто знает, в чем проблема? Зарание всем благодарен!
aav8, 30.12.2008 - 6:55
>> Меняю в реестре переменную окружения. >> Запускаю прогу, которая должна смотреть на эту переменную (в >> частности Visual Studio 7). >> А прога видит почему-то предыдущее значение. >> Проблема решается только ребутом. >> Может кто знает, в чем проблема? >> Зарание всем благодарен! Достаточно ребутнуть программу, из которой запускаешь свою программу. Я так понимаю что это проводник. Для этого нужно перелогиниться. Пуск -> завершение сеанса, и опять зайти со своим именем....
typhoon, 30.12.2008 - 13:36
Не подходит. Завершение сеанса закрывает все бегущие программы. А это мне не подходит.
aav8, 30.12.2008 - 14:26
>> Не подходит. Завершение сеанса закрывает все бегущие программы. А это мне не подходит.
Тогда запускай свою программу из другой, в которой меняешь окружение. T.e.: Есть программа 1. В этой программе меняешь окружение, и из нее запускаешь программу 2. В окружение программы 2 по умолчанию копируется окружение родительского процесса. (см. функцию CreateProcess). В качестве программы 1 наверное можно использовать какой-либо файловый менеджер. Или нарисовать свою в той-же VisualStudio :-) . Или научиться перезапускать проводник... Можно попробовать из диспетчера задач его закрыть, а потом запустить.