Función UrlUnescapeA (shlwapi.h)
Convierte las secuencias de escape en caracteres normales.
Sintaxis
LWSTDAPI UrlUnescapeA(
[in, out] PSTR pszUrl,
[out, optional] PSTR pszUnescaped,
[in, out, optional] DWORD *pcchUnescaped,
DWORD dwFlags
);
Parámetros
[in, out] pszUrl
Tipo: PTSTR
Puntero a una cadena terminada en null con la dirección URL. Si dwFlags se establece en URL_UNESCAPE_INPLACE, la cadena convertida se devuelve a través de este parámetro.
[out, optional] pszUnescaped
Tipo: PTSTR
Puntero a un búfer que recibirá una cadena terminada en null que contiene la versión sin escape de pszURL. Si URL_UNESCAPE_INPLACE se establece en dwFlags, este parámetro se omite.
[in, out, optional] pcchUnescaped
Tipo: DWORD*
Número de caracteres del búfer al que apunta pszUnescaped. En la entrada, el valor pcchUnescaped apunta a se establece en el tamaño del búfer. Si la función devuelve un código correcto y la marca de URL_UNESCAPE_INPLACE no se establece, el valor que pcchUnescaped apunta a se establece en el número de caracteres escritos en ese búfer, sin contar el carácter NULL de terminación. Si se devuelve un código de error de E_POINTER, el búfer era demasiado pequeño y el valor al que apunta pcchUnescaped se establece en el número necesario de caracteres que debe contener el búfer. Si se devuelven otros errores, el valor al que apunta pcchUnescaped no está definido.
dwFlags
Tipo: DWORD
Marcas que controlan qué caracteres están sin escape. Puede ser una combinación de las marcas siguientes.
URL_DONT_UNESCAPE_EXTRA_INFO
No convierta el número o ? character, o cualquier carácter que los siga en la cadena.
URL_UNESCAPE_AS_UTF8
Introducido en Windows 8. Descodifique las direcciones URL codificadas mediante la marca URL_ESCAPE_AS_UTF8 .
URL_UNESCAPE_INPLACE
Use pszURL para devolver la cadena convertida en lugar de pszUnescaped.
Valor devuelto
Tipo: HRESULT
Devuelve S_OK si se ejecuta correctamente. Si no se establece la marca de URL_UNESCAPE_INPLACE , el valor al que apunta pcchUnescaped se establecerá en el número de caracteres del búfer de salida al que apunta pszUnescaped. Devuelve E_POINTER si la marca URL_UNESCAPE_INPLACE no está establecida y el búfer de salida es demasiado pequeño. El parámetro pcchUnescaped se establecerá en el tamaño de búfer necesario. De lo contrario, devuelve un valor de error estándar.
Comentarios
Una secuencia de escape tiene el formato "%xy".
Las cadenas de entrada no pueden ser más largas que INTERNET_MAX_URL_LENGTH.
Nota
El encabezado shlwapi.h define UrlUnescape 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, Windows XP [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | shlwapi.h |
Library | Shlwapi.lib |
Archivo DLL | Shlwapi.dll (versión 5.0 o posterior) |