Compartilhar via


Função ExpandEnvironmentStringsW (processenv.h)

Expande cadeias de caracteres de variáveis de ambiente e as substitui pelos valores definidos para o usuário atual.

Para especificar o bloco de ambiente para um determinado usuário ou sistema, use a função ExpandEnvironmentStringsForUser .

Sintaxe

DWORD ExpandEnvironmentStringsW(
  [in]            LPCWSTR lpSrc,
  [out, optional] LPWSTR  lpDst,
  [in]            DWORD   nSize
);

Parâmetros

[in] lpSrc

Um buffer que contém uma ou mais cadeias de caracteres de variáveis de ambiente no formulário: %variableName%. Para cada referência desse tipo, a parte %variableName% é substituída pelo valor atual dessa variável de ambiente.

Case é ignorado ao procurar o nome da variável de ambiente. Se o nome não for encontrado, a parte %variableName% será deixada sem teste.

Observe que essa função não dá suporte a todos os recursos compatíveis com Cmd.exe. Por exemplo, ele não dá suporte a %variableName:str1=str2% ou %variableName:~offset,length%.

[out, optional] lpDst

Um ponteiro para um buffer que recebe o resultado da expansão das cadeias de caracteres de variável de ambiente no buffer lpSrc . Observe que esse buffer não pode ser o mesmo que o buffer lpSrc .

[in] nSize

O número máximo de caracteres que podem ser armazenados no buffer apontado pelo parâmetro lpDst . Ao usar cadeias de caracteres ANSI, o tamanho do buffer deve ser o comprimento da cadeia de caracteres, mais o caractere nulo de terminação, além de um. Ao usar cadeias de caracteres Unicode, o tamanho do buffer deve ser o comprimento da cadeia de caracteres mais o caractere nulo de terminação.

Retornar valor

Se a função for bem-sucedida, o valor retornado será o número de TCHARs armazenados no buffer de destino, incluindo o caractere nulo de terminação. Se o buffer de destino for muito pequeno para manter a cadeia de caracteres expandida, o valor retornado será o tamanho do buffer necessário, em caracteres.

Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.

Comentários

O tamanho dos buffers lpSrc e lpDst é limitado a 32K.

Para substituir nomes de pastas em um caminho totalmente qualificado por suas cadeias de caracteres de variáveis de ambiente associadas, use a função PathUnExpandEnvStrings .

Para recuperar a lista de variáveis de ambiente para um processo, use a função GetEnvironmentStrings .

Exemplos

Para obter um exemplo, consulte Obtendo informações do sistema.

Observação

O cabeçalho processenv.h define ExpandEnvironmentStrings como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho processenv.h (inclua Windows.h)
Biblioteca Kernel32.lib
DLL Kernel32.dll

Confira também

Variáveis de ambiente

Funções de informações do sistema