Función GetCurrencyFormatEx (winnls.h)

Da formato a una cadena de número como una cadena de moneda para una configuración regional especificada por nombre.

Nota La aplicación debe llamar a esta función en preferencia a GetCurrencyFormat si está diseñada para ejecutarse solo en Windows Vista y versiones posteriores.

 
Nota Esta función puede dar formato a los datos que cambian entre versiones, por ejemplo, debido a una configuración regional personalizada. Si la aplicación debe conservar o transmitir datos, consulte Uso de datos de configuración regional persistente.
 

Sintaxis

int GetCurrencyFormatEx(
  [in, optional]  LPCWSTR            lpLocaleName,
  [in]            DWORD              dwFlags,
  [in]            LPCWSTR            lpValue,
  [in, optional]  const CURRENCYFMTW *lpFormat,
  [out, optional] LPWSTR             lpCurrencyStr,
  [in]            int                cchCurrency
);

Parámetros

[in, optional] lpLocaleName

Puntero a un nombre de configuración regional o a uno de los siguientes valores predefinidos.

[in] dwFlags

Marcas que controlan la operación de la función. La aplicación debe establecer este parámetro en 0 si lpFormat no está establecido en NULL. En este caso, la función da formato a la cadena mediante invalidaciones de usuario al formato de moneda predeterminado para la configuración regional. Si lpFormat se establece en NULL, la aplicación puede especificar LOCALE_NOUSEROVERRIDE para dar formato a la cadena mediante el formato de moneda predeterminado del sistema para la configuración regional especificada.

Precaución El uso de LOCALE_NOUSEROVERRIDE no se recomienda, ya que deshabilita las preferencias del usuario.
 

[in] lpValue

Puntero a una cadena terminada en null que contiene la cadena de número que se va a dar formato. Esta cadena solo puede contener los siguientes caracteres. Todos los demás caracteres no son válidos. La función devuelve un error si la cadena se desvía de estas reglas.

  • Caracteres "0" a "9"
  • Un separador decimal (punto) si el número es un valor de punto flotante
  • Signo menos en la primera posición del carácter si el número es un valor negativo

[in, optional] lpFormat

Puntero a una estructura CURRENCYFMT que contiene información de formato de moneda. Todos los miembros de la estructura deben contener los valores adecuados. La aplicación puede establecer este parámetro en NULL si la función va a usar el formato de moneda de la configuración regional especificada. Si este parámetro no está establecido en NULL, la función usa la configuración regional especificada solo para dar formato a la información no especificada en la estructura CURRENCYFMT , por ejemplo, el valor de cadena para el signo negativo usado por la configuración regional.

[out, optional] lpCurrencyStr

Puntero a un búfer en el que esta función recupera la cadena de moneda con formato.

[in] cchCurrency

Tamaño, en caracteres, del búfer lpCurrencyStr . La aplicación puede establecer este parámetro en 0 para devolver el tamaño del búfer necesario para contener la cadena de moneda con formato. En este caso, no se usa el búfer indicado por lpCurrencyStr .

Valor devuelto

Devuelve el número de caracteres recuperados en el búfer indicado por lpCurrencyStr si se ejecuta correctamente. Si el parámetro cchCurrency es 0, la función devuelve el tamaño del búfer necesario para contener la cadena de moneda con formato, incluido un carácter NULO de terminación.

La función devuelve 0 si no se realiza correctamente. Para obtener información de error extendida, la aplicación puede llamar a GetLastError, que puede devolver uno de los siguientes códigos de error:

  • ERROR_INSUFFICIENT_BUFFER. Un tamaño de búfer proporcionado no era lo suficientemente grande o se estableció incorrectamente en NULL.
  • ERROR_INVALID_FLAGS. Los valores proporcionados para las marcas no eran válidos.
  • ERROR_INVALID_PARAMETER. Cualquiera de los valores de parámetro no era válido.

Comentarios

A partir de Windows 8: Si la aplicación pasa etiquetas de idioma a esta función desde el espacio de nombres Windows.Globalization , primero debe convertir las etiquetas llamando a ResolveLocaleName.

Requisitos

   
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 winnls.h (incluya Windows.h)
Library Kernel32.lib
Archivo DLL Kernel32.dll

Vea también

CURRENCYFMT

GetCurrencyFormat

GetNumberFormatEx

Compatibilidad con idiomas nacionales

Funciones de compatibilidad con idiomas nacionales