Compartilhar via


Função PathCombineW (shlwapi.h)

Concatena duas cadeias de caracteres que representam caminhos formados corretamente em um caminho; também concatena qualquer elemento de caminho relativo.

Observação Uso indevido dessa função pode levar a uma sobrecarga de buffer. Recomendamos o uso da função PathCchCombine mais segura ou PathCchCombineEx em seu lugar.
 

Sintaxe

LPWSTR PathCombineW(
  [out]          LPWSTR  pszDest,
  [in, optional] LPCWSTR pszDir,
  [in]           LPCWSTR pszFile
);

Parâmetros

[out] pszDest

Tipo: LPTSTR

Um ponteiro para um buffer que, quando essa função retorna com êxito, recebe a cadeia de caracteres de caminho combinada. Você deve definir o tamanho desse buffer para MAX_PATH para garantir que ele seja grande o suficiente para manter a cadeia de caracteres retornada.

[in, optional] pszDir

Tipo: LPCTSTR

Um ponteiro para uma cadeia de caracteres terminada em nulo de comprimento máximo MAX_PATH que contém o primeiro caminho. Esse valor pode ser NULL.

[in] pszFile

Tipo: LPCTSTR

Um ponteiro para uma cadeia de caracteres terminada em nulo de comprimento máximo MAX_PATH que contém o segundo caminho. Esse valor pode ser NULL.

Valor de retorno

Tipo: LPTSTR

Um ponteiro para um buffer que, quando essa função retorna com êxito, recebe a cadeia de caracteres de caminho concatenada. Essa é a mesma cadeia de caracteres apontada por pszPathOut. Se essa função não retornar com êxito, esse valor será NULL.

Observações

O caminho do diretório deve estar na forma de A:,B:, ..., Z:. O caminho do arquivo deve estar em um formulário correto que represente a parte do nome do arquivo do caminho. Se o caminho do diretório terminar com uma barra invertida, a barra invertida será mantida. Observe que, embora lpszDir e lpszFile sejam parâmetros opcionais, ambos não podem ser NULL.

Exemplos

#include <windows.h>
#include <iostream.h>
#include "Shlwapi.h"

int main( void )
{
// Buffer to hold combined path.
char buffer_1[MAX_PATH] = "";
char *lpStr1;
lpStr1 = buffer_1;

// String for balance of path name.
char buffer_2[ ] = "One\\Two\\Three";
char *lpStr2;
lpStr2 = buffer_2;

// String for directory name.
char buffer_3[ ] = "C:";
char *lpStr3;
lpStr3 = buffer_3;

cout << "The file path to be combined is  " 
     << lpStr2 << endl;
cout << "The directory name path is       " 
     << lpStr3 << endl;
cout << "The combined path is             " 
     << PathCombine(lpStr1,lpStr3,lpStr2) << endl;
}

------------
INPUT:
------------
Path for directory part: "C:"
Path for file part: "One\Two\Three"
------------
OUTPUT:
------------
The file path to be combined is  One\Two\Three
The directory name path is       C:
The combined path is             C:\One\Two\Three

Nota

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

Requisitos

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