Share via


Função PathCchAddExtension (pathcch.h)

Adiciona uma extensão de nome de arquivo a uma cadeia de caracteres de caminho.

Essa função difere de PathAddExtension , pois aceita caminhos com prefixos "\", "\?" e "\?\UNC".

Nota Essa função deve ser usada no lugar de PathAddExtension para evitar a possibilidade de um estouro de buffer.

Sintaxe

WINPATHCCHAPI HRESULT PathCchAddExtension(
  [in, out] PWSTR  pszPath,
  [in]      size_t cchPath,
  [in]      PCWSTR pszExt
);

Parâmetros

[in, out] pszPath

Um ponteiro para a cadeia de caracteres de caminho. Quando essa função retorna com êxito, o buffer contém a cadeia de caracteres com a extensão acrescentada. Esse valor não deve ser NULL.

Nota Se a cadeia de caracteres original já tiver uma extensão de nome de arquivo presente, nenhuma nova extensão será adicionada e a cadeia de caracteres original permanecerá inalterada.

[in] cchPath

O tamanho do buffer apontado por pszPath, em caracteres.

[in] pszExt

Um ponteiro para a cadeia de caracteres de extensão de nome de arquivo. Essa cadeia de caracteres pode ser fornecida com ou sem um período anterior (".ext" ou "ext").

Retornar valor

Essa função retorna um código HRESULT , incluindo o seguinte.

Código de retorno Descrição
S_OK
A função foi bem-sucedida. Observe que isso também inclui o caso de uma extensão vazia, como um período sem caracteres a seguir. Nesse caso, a cadeia de caracteres original é retornada sem alterações.
E_INVALIDARG
Esse valor pode ser causado por várias coisas, como o parâmetro pszPath que está sendo definido como NULL, o cchPath sendo definido como 0 ou um valor maior que PATHCCH_MAX_CCH ou a cadeia de caracteres de extensão contendo caracteres ilegais ou não sendo uma extensão válida.
S_FALSE
A cadeia de caracteres original já tem uma extensão.
PATHCCH_E_FILENAME_TOO_LONG
O buffer é muito pequeno para manter a cadeia de caracteres retornada.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8 [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2012 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho pathcch.h
Biblioteca Pathcch.lib