Compartir a través de


Función ExpandEnvironmentStringsA (processenv.h)

Expande cadenas de variables de entorno y las reemplaza por los valores definidos para el usuario actual.

Para especificar el bloque de entorno para un usuario determinado o el sistema, use la función ExpandEnvironmentStringsForUser .

Sintaxis

DWORD ExpandEnvironmentStringsA(
  [in]            LPCSTR lpSrc,
  [out, optional] LPSTR  lpDst,
  [in]            DWORD  nSize
);

Parámetros

[in] lpSrc

Búfer que contiene una o varias cadenas de variables de entorno con el formato: %variableName%. Para cada referencia de este tipo, la parte %variableName% se reemplaza por el valor actual de esa variable de entorno.

El caso se omite al buscar el nombre de la variable de entorno. Si no se encuentra el nombre, la parte %variableName% se deja sin aplicar.

Tenga en cuenta que esta función no admite todas las características que Cmd.exe admite. Por ejemplo, no admite %variableName:str1=str2% o %variableName:~offset,length%.

[out, optional] lpDst

Puntero a un búfer que recibe el resultado de expandir las cadenas de variables de entorno en el búfer lpSrc . Tenga en cuenta que este búfer no puede ser el mismo que el búfer lpSrc .

[in] nSize

Número máximo de caracteres que se pueden almacenar en el búfer al que apunta el parámetro lpDst . Al usar cadenas ANSI, el tamaño del búfer debe ser la longitud de la cadena, además de terminar el carácter NULO, más uno. Al usar cadenas Unicode, el tamaño del búfer debe ser la longitud de la cadena más el carácter nulo de terminación.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es el número de TCHAR almacenados en el búfer de destino, incluido el carácter nulo de terminación. Si el búfer de destino es demasiado pequeño para contener la cadena expandida, el valor devuelto es el tamaño de búfer necesario, en caracteres.

Si la función no se realiza correctamente, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.

Comentarios

El tamaño de los búferes lpSrc y lpDst está limitado a 32 000.

Para reemplazar los nombres de carpeta en una ruta de acceso completa por sus cadenas de variables de entorno asociadas, use la función PathUnExpandEnvStrings .

Para recuperar la lista de variables de entorno de un proceso, use la función GetEnvironmentStrings .

Ejemplos

Para obtener un ejemplo, consulte Obtención de información del sistema.

Nota

El encabezado processenv.h define ExpandEnvironmentStrings como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [aplicaciones de escritorio | Aplicaciones para UWP]
Servidor mínimo compatible Windows 2000 Server [aplicaciones de escritorio | Aplicaciones para UWP]
Plataforma de destino Windows
Encabezado processenv.h (incluir Windows.h)
Library Kernel32.lib
Archivo DLL Kernel32.dll

Vea también

Variables de entorno

Funciones de información del sistema