Función InternetCombineUrlW (wininet.h)

Combina una dirección URL base y relativa en una única dirección URL. La dirección URL resultante está canónica (consulte InternetCanonicalizeUrl).

Sintaxis

BOOL InternetCombineUrlW(
  [in]      LPCWSTR lpszBaseUrl,
  [in]      LPCWSTR lpszRelativeUrl,
  [out]     LPWSTR  lpszBuffer,
  [in, out] LPDWORD lpdwBufferLength,
  [in]      DWORD   dwFlags
);

Parámetros

[in] lpszBaseUrl

Puntero a una cadena terminada en null que contiene la dirección URL base.

[in] lpszRelativeUrl

Puntero a una cadena terminada en null que contiene la dirección URL relativa.

[out] lpszBuffer

Puntero a un búfer que recibe la dirección URL combinada.

[in, out] lpdwBufferLength

Puntero a una variable que contiene el tamaño del búfer lpszBuffer , en caracteres. Si la función se ejecuta correctamente, este parámetro recibe el tamaño de la dirección URL combinada, en caracteres, no incluido el carácter de terminación null. Si se produce un error en la función, este parámetro recibe el tamaño del búfer necesario, en caracteres (incluido el carácter de terminación null).

[in] dwFlags

Controla el funcionamiento de la función. Este parámetro puede ser uno de los valores siguientes.

Valor Significado
ICU_BROWSER_MODE
No codifica ni descodifica caracteres después de "#" o "?", y no quita el espacio en blanco final después de "?". Si no se especifica este valor, se codifica toda la dirección URL y se quita el espacio en blanco final.
ICU_DECODE
Convierte todas las secuencias %XX en caracteres, incluidas las secuencias de escape, antes de analizar la dirección URL.
ICU_ENCODE_PERCENT
Codifica los signos de porcentaje encontrados. De forma predeterminada, los signos de porcentaje no están codificados. Este valor está disponible en Microsoft Internet Explorer 5 y versiones posteriores.
ICU_ENCODE_SPACES_ONLY
Solo codifica espacios.
ICU_NO_ENCODE
No convierte caracteres no seguros en secuencias de escape.
ICU_NO_META
No quita las secuencias meta (como "." y "..") de la dirección URL.

Valor devuelto

Devuelve TRUE si se ejecuta correctamente o FALSE de lo contrario. Para obtener información de error extendida, llame a GetLastError. Entre los posibles errores se incluyen los siguientes.

Código devuelto Descripción
ERROR_BAD_PATHNAME
No se pudieron combinar las direcciones URL.
ERROR_INSUFFICIENT_BUFFER
El búfer proporcionado a la función era insuficiente o NULL. El valor indicado por el parámetro lpdwBufferLength contendrá el número de bytes necesarios para contener la dirección URL combinada.
ERROR_INTERNET_INVALID_URL
El formato de la dirección URL no es válido.
ERROR_INVALID_PARAMETER
Hay un parámetro de cadena, búfer, tamaño de búfer o marcas no válidos.

Comentarios

Nota WinINet no admite implementaciones de servidor. Además, no se debe usar desde un servicio. En el caso de las implementaciones de servidor o los servicios, use los servicios HTTP de Microsoft Windows (WinHTTP).
 

Nota

El encabezado wininet.h define InternetCombineUrl 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

   
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

Control de localizadores uniformes de recursos

Funciones de WinINet