Função UrlApplySchemeA (shlwapi.h)

Determina um esquema para uma cadeia de caracteres de URL especificada e retorna uma cadeia de caracteres com um prefixo apropriado.

Sintaxe

LWSTDAPI UrlApplySchemeA(
  [in]      PCSTR pszIn,
  [out]     PSTR  pszOut,
  [in, out] DWORD *pcchOut,
            DWORD dwFlags
);

Parâmetros

[in] pszIn

Tipo: PCTSTR

Uma cadeia de caracteres terminada em nulo de comprimento máximo INTERNET_MAX_URL_LENGTH que contém uma URL.

[out] pszOut

Tipo: PTSTR

Um ponteiro para um buffer que, quando essa função retorna com êxito, recebe uma cadeia de caracteres terminada em nulo definida como a URL especificada por pszIn e convertida no formato de esquema padrão://URL_string .

[in, out] pcchOut

Tipo: DWORD*

O endereço de um valor definido como o número de caracteres no buffer pszOut . Quando a função retorna, o valor depende se a função é bem-sucedida ou retorna E_POINTER. Para outros valores retornados, o valor desse parâmetro não tem sentido.

dwFlags

Tipo: DWORD

Os sinalizadores que especificam como determinar o esquema. Os sinalizadores a seguir podem ser combinados.

URL_APPLY_DEFAULT

Aplique o esquema padrão se UrlApplyScheme não puder determinar um. O prefixo padrão é armazenado no registro, mas normalmente é "http".

URL_APPLY_GUESSSCHEME

Tente determinar o esquema examinando pszIn.

URL_APPLY_GUESSFILE

Tente determinar uma URL de arquivo do pszIn.

URL_APPLY_FORCEAPPLY

Force UrlApplyScheme a determinar um esquema para pszIn.

Retornar valor

Tipo: HRESULT

Retorna um valor retornado COM padrão, incluindo o seguinte.

Código de retorno Descrição
S_OK
Um esquema foi determinado. pszOut aponta para uma cadeia de caracteres que contém a URL com o prefixo do esquema. O valor de pcchOut é definido como o número de caracteres na cadeia de caracteres, sem contar o caractere NULL de terminação.
S_FALSE
Não houve erros, mas nenhum prefixo foi anexado.
E_POINTER
O buffer era muito pequeno. O valor de pcchOut é definido como o número mínimo de caracteres que o buffer deve ser capaz de conter, incluindo o caractere NULL de terminação.

Comentários

Se a URL tiver um esquema válido, a cadeia de caracteres não será modificada. No entanto, quase qualquer combinação de dois ou mais caracteres seguidos por dois-pontos será analisada como um esquema. Os caracteres válidos incluem algumas marcas de pontuação comuns, como ".". Se a cadeia de caracteres de entrada se ajustar a essa descrição, UrlApplyScheme poderá tratá-la como válida e não aplicar um esquema. Para forçar a função a aplicar um esquema a uma URL, defina os sinalizadores URL_APPLY_FORCEAPPLY e URL_APPLY_DEFAULT em dwFlags. Essa combinação de sinalizadores força a função a aplicar um esquema à URL. Normalmente, a função não poderá determinar um esquema válido. O segundo sinalizador garante que, se nenhum esquema válido puder ser determinado, a função aplicará o esquema padrão à URL.

Observação

O cabeçalho shlwapi.h define UrlApplyScheme como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional, Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho shlwapi.h
Biblioteca Shlwapi.lib
DLL Shlwapi.dll (versão 5.0 ou posterior)