Compartir a través de


Función StringCchLengthA (strsafe.h)

Determina si una cadena supera la longitud especificada, en caracteres.

StringCchLength es un reemplazo de las siguientes funciones:

Sintaxis

STRSAFEAPI StringCchLengthA(
  [in]  STRSAFE_PCNZCH psz,
  [in]  size_t         cchMax,
  [out] size_t         *pcchLength
);

Parámetros

[in] psz

Tipo: LPCTSTR de

Cadena cuya longitud se va a comprobar.

[in] cchMax

Tipo: size_t

Número máximo de caracteres permitidos en psz, incluido el carácter nulo de terminación. Este valor no puede superar STRSAFE_MAX_CCH.

[out] pcchLength

Tipo: size_t*

Número de caracteres de psz, sin incluir el carácter nulo de terminación. Este valor solo es válido si pcch no es NULL y la función se realiza correctamente.

Valor devuelto

Tipo: HRESULT

Esta función puede devolver uno de los siguientes valores. Se recomienda encarecidamente usar las macros SUCCEEDED y FAILED para probar el valor devuelto de esta función.

Código devuelto Descripción
S_OK
La cadena de psz no se NULLy la longitud de la cadena (incluido el carácter NULO de terminación) es menor o igual que caracteres cchMax.
STRSAFE_E_INVALID_PARAMETER
El valor de psz es null, cchMax es mayor que STRSAFE_MAX_CCHo psz es mayor que cchMax.
 

Tenga en cuenta que esta función devuelve un valor de HRESULT, a diferencia de las funciones que reemplaza.

Observaciones

En comparación con las funciones que reemplaza, stringCchLength es una herramienta adicional para el control adecuado del búfer en el código. El control deficiente del búfer está implicado en muchos problemas de seguridad que implican saturaciones de búfer.

StringCchLength se puede usar en su forma genérica o en sus formularios más específicos. El tipo de datos de la cadena determina la forma de esta función que se debe usar.

Tipo de datos de cadena Literal de cadena Función
char "string" stringCchLengthA
TCHAR TEXT("string") stringCchLength de
WCHAR L"string" StringCchLengthW
 

unalignedStringCchLength es un alias para esta función.

Nota

El encabezado strsafe.h define StringCchLength 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 neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.

Requisitos

Requisito Valor
cliente mínimo admitido Windows XP con SP2 [aplicaciones de escritorio | Aplicaciones para UWP]
servidor mínimo admitido Windows Server 2003 con SP1 [aplicaciones de escritorio | Aplicaciones para UWP]
de la plataforma de destino de Windows
encabezado de strsafe.h

Consulte también

StringCbLength