Función InternetCrackUrlW (wininet.h)
Descifra una dirección URL en sus partes de componente.
Sintaxis
BOOL InternetCrackUrlW(
[in] LPCWSTR lpszUrl,
[in] DWORD dwUrlLength,
[in] DWORD dwFlags,
[in, out] LPURL_COMPONENTSW lpUrlComponents
);
Parámetros
[in] lpszUrl
Puntero a una cadena que contiene la dirección URL canónica que se va a descifrar.
[in] dwUrlLength
Tamaño de la cadena lpszUrl , en TCHAR o cero si lpszUrl es una cadena ASCIIZ.
[in] dwFlags
Controla la operación. Este parámetro puede ser uno de los valores siguientes.
Valor | Significado |
---|---|
|
Convierte los caracteres codificados en su forma normal. Esto solo se puede usar si el usuario proporciona búferes en la estructura de URL_COMPONENTS para copiar los componentes en. |
|
Convierte todas las secuencias de escape (%xx) en sus caracteres correspondientes. Esto solo se puede usar si el usuario proporciona búferes en la estructura de URL_COMPONENTS para copiar los componentes en. |
[in, out] lpUrlComponents
Puntero a una estructura de URL_COMPONENTS que recibe los componentes de la dirección URL.
Valor devuelto
Devuelve TRUE si la función se realiza correctamente o FALSE en caso contrario. Para obtener información de error extendida, llame a GetLastError.
Comentarios
Los componentes necesarios se indican mediante miembros de la estructura URL_COMPONENTS . Cada componente tiene un puntero al valor y tiene un miembro que almacena la longitud del valor almacenado. Si tanto el valor como la longitud de un componente son iguales a cero, no se devuelve ese componente. Windows Vista y versiones posteriores. Si el puntero al valor del componente es NULL y el valor de su miembro de longitud correspondiente es distinto de cero, la dirección del primer carácter del componente correspondiente en la cadena lpszUrl se almacena en el puntero y la longitud del componente se almacena en el miembro length.
Si el puntero contiene la dirección del búfer proporcionado por el usuario, el miembro de longitud debe contener el tamaño del búfer. InternetCrackUrl copia el componente en el búfer y el miembro length se establece en la longitud del componente copiado, menos 1 para el terminador de cadena final.
Para que InternetCrackUrl funcione correctamente, el tamaño de la estructura de URL_COMPONENTS , en bytes, debe almacenarse en el miembro dwStructSize .
Nota No use InternetCrackUrl en direcciones URL de "file://" que contengan espacios, ya que el valor devuelto en el miembro dwUrlPathLength de la estructura URL_COMPONENTS a la que apunta lpUrlComponents es demasiado grande. Sin embargo, este es solo el caso, con direcciones URL de "file://" que contienen caracteres de espacio.
Al igual que todos los demás aspectos de la API de WinINet, esta función no se puede llamar de forma segura desde DllMain ni desde los constructores y destructores de objetos globales.
Nota
El encabezado wininet.h define InternetCrackUrl 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 Convenciones para prototipos de función.
Requisitos
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | wininet.h |
Library | Wininet.lib |
Archivo DLL | Wininet.dll |
Consulte también
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de