Ação WriteEnvironmentStrings

A ação WriteEnvironmentStrings modifica os valores das variáveis de ambiente.

As variáveis de ambiente não são alteradas para a instalação em andamento quando a ação WriteEnvironmentStrings ou a ação RemoveEnvironmentStrings é executada. No Windows 2000, Windows Server 2003, Windows XP e Windows Vista, essas informações são armazenadas no registro e uma mensagem de WM_SETTINGCHANGE é enviada para notificar o sistema das alterações quando a instalação for concluída. Outro processo pode receber notificação das alterações tratando essas mensagens. Nenhuma mensagem será enviada se uma reinicialização do sistema estiver pendente. Um pacote pode usar a propriedade MsiSystemRebootPending para verificar se uma reinicialização do sistema está pendente.

O instalador executa a ação WriteEnvironmentStrings somente durante a instalação ou reinstalação de um componente e executa a ação RemoveEnvironmentStrings somente durante a remoção de um componente.

Os valores são gravados ou removidos com base na seleção de ações e modificadores primários. Elas estão descritas na seção ActionData Messages a seguir. Observe que, dependendo da ação especificada, WriteEnvironmentStrings pode remover variáveis e RemoveEnvironmentStrings pode adicioná-las com base na criação da tabela Environment.

Restrições de sequências

A ação InstallValidate deve ser executada antes da ação RemoveEnvironmentStrings. Como a ação WriteEnvironmentStrings e RemoveEnvironmentStrings nunca são aplicadas durante uma instalação ou remoção de um componente, sua sequência relativa não é restrita.

Mensagens ActionData

Campo Descrição dos dados de ação
 [1] Nome da variável de ambiente a ser modificada.
[2] O valor da variável de ambiente.
[3] Esse é um campo de sinalizadores de bits que especifica a ação a ser executada. Inclua apenas um bit para uma ação primária. Pode haver mais de um bit modificador incluído neste campo. Confira as descrições do sinalizador de bit a seguir.

 

Valor de bit Descrição das ações primárias
0x1 Definido. Define o valor da variável de ambiente em todos os casos.
Se esse bit for combinado com um bit modificador Acrescentar ou Prefixo, a ação adicionará o valor a qualquer valor existente na variável.
0x2 Definido. Define o valor se a variável estiver ausente.
Se esse bit for combinado com um bit modificador Acrescentar ou Prefixo, a ação adicionará o valor a qualquer valor existente na variável.
0x4 Remover. Remove o valor da variável.
Se esse bit for combinado com um bit modificador Acrescentar ou Prefixo, o valor será removido da cadeia de caracteres existente, se o valor existir.

 

Valor de bit Descrição do modificador
0x20000000 Se esse bit estiver definido, as ações serão aplicadas às variáveis de ambiente do computador.
Se esse bit não estiver definido, as ações serão aplicadas às variáveis de ambiente do usuário.
0x40000000 Acrescentar. Esse bit é opcional. Não defina os modificadores Acrescentar e Prefixo.
0x80000000 Prefixo. Esse bit é opcional. Não defina os modificadores Acrescentar e Prefixo.