Переменная среды для текущего процесса установки installshield 2011
Я создаю две переменные среды во время установки. Во время самой установки эти переменные среды используются некоторыми моими пакетными файлами. Но я не могу найти переменные среды, доступные в тот момент, когда мои командные файлы начинают свое выполнение. После установки я могу найти, что переменная окружения установлена правильно. Что мне здесь не хватает? Есть ли какие-либо проблемы с секвенированием, например, когда я запускаю свои командные файлы до того, как переменная окружения будет установлена? Пожалуйста, пролите немного света на это, я пытаюсь сделать это в течение прошлой недели.
1 ответ
Это помогло бы точно знать, где выполняется ваш код (секвенируется) и откладывается ли он, олицетворяется и т. Д., А также предназначена ли эта переменная для пользователя или системы.
Проблемы, как правило, следующие:
Если он отложен и запущен под локальной системной учетной записью, он не увидит пользовательскую переменную.
Если он олицетворен, он не увидит никаких пользовательских переменных, потому что олицетворение означает только учетные данные пользователя - это не означает загрузку всего пользовательского профиля (который необходим для просмотра пользовательских переменных).
Вы можете быть обречены, потому что установщик Windows не передает и не передает изменения до конца установки. Пользовательское действие Commit может найти их, или оболочка, выполняемая программой после InstallFinalize, может найти их.
Службы не видят их, потому что SCM удерживает их во время загрузки системы и не обновляет их.
Если вам нужна работающая программа, чтобы забрать их после установки, она должна ответить на сообщение Windows WM_SETTINGSCHANGED.
Первые три, вероятно, наиболее актуальны для вашей проблемы.