Compartir a través de


Función UrlApplySchemeW (shlwapi.h)

Determina un esquema para una cadena de dirección URL especificada y devuelve una cadena con un prefijo adecuado.

Sintaxis

LWSTDAPI UrlApplySchemeW(
  [in]      PCWSTR pszIn,
  [out]     PWSTR  pszOut,
  [in, out] DWORD  *pcchOut,
            DWORD  dwFlags
);

Parámetros

[in] pszIn

Tipo: PCTSTR

Cadena terminada en NULL de longitud máxima INTERNET_MAX_URL_LENGTH que contiene una dirección URL.

[out] pszOut

Tipo: PTSTR de

Puntero a un búfer que, cuando esta función devuelve correctamente, recibe una cadena terminada en null establecida en la dirección URL especificada por pszIn y convertida en el esquema de estándar://URL_string formato.

[in, out] pcchOut

Tipo: DWORD* de

Dirección de un valor establecido en el número de caracteres del búfer de pszOut. Cuando se devuelve la función, el valor depende de si la función es correcta o devuelve E_POINTER. Para otros valores devueltos, el valor de este parámetro no tiene sentido.

dwFlags

Tipo: DWORD de

Marcas que especifican cómo determinar el esquema. Se pueden combinar las marcas siguientes.

URL_APPLY_DEFAULT

Aplique el esquema predeterminado si UrlApplyScheme no puede determinar uno. El prefijo predeterminado se almacena en el Registro, pero normalmente es "http".

URL_APPLY_GUESSSCHEME

Intente determinar el esquema examinando pszIn.

URL_APPLY_GUESSFILE

Intente determinar una dirección URL de archivo de pszIn.

URL_APPLY_FORCEAPPLY

Forzar urlApplyScheme para determinar un esquema para pszIn.

Valor devuelto

Tipo: HRESULT

Devuelve un valor devuelto COM estándar, incluido lo siguiente.

Código devuelto Descripción
S_OK
Se determinó un esquema. pszOut apunta a una cadena que contiene la dirección URL con el prefijo del esquema. El valor de pcchOut se establece en el número de caracteres de la cadena, sin contar la terminación carácter NULL.
S_FALSE
No hubo errores, pero no se antepone ningún prefijo.
E_POINTER
El búfer era demasiado pequeño. El valor de pcchOut se establece en el número mínimo de caracteres que debe contener el búfer, incluida la terminación carácter NULL.

Observaciones

Si la dirección URL tiene un esquema válido, la cadena no se modificará. Sin embargo, casi cualquier combinación de dos o más caracteres seguidos de dos puntos se analizará como un esquema. Entre los caracteres válidos se incluyen algunas marcas de puntuación comunes, como ".". Si la cadena de entrada se ajusta a esta descripción, urlApplyScheme puede tratarla como válida y no aplicar un esquema. Para forzar que la función aplique un esquema a una dirección URL, establezca las marcas URL_APPLY_FORCEAPPLY y URL_APPLY_DEFAULT en dwFlags. Esta combinación de marcas obliga a la función a aplicar un esquema a la dirección URL. Normalmente, la función no podrá determinar un esquema válido. La segunda marca garantiza que, si no se puede determinar ningún esquema válido, la función aplicará el esquema predeterminado a la dirección URL.

Nota

El encabezado shlwapi.h define UrlApplyScheme 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 2000 Professional, Windows XP [solo aplicaciones de escritorio]
servidor mínimo admitido Windows 2000 Server [solo aplicaciones de escritorio]
de la plataforma de destino de Windows
encabezado de shlwapi.h
biblioteca de Shlwapi.lib
DLL de Shlwapi.dll (versión 5.0 o posterior)