Função CreateSymbolicLinkTransactedA (winbase.h)

[A Microsoft recomenda fortemente que os desenvolvedores utilizem meios alternativos para atender às necessidades do aplicativo. Muitos cenários para os quais o TxF foi desenvolvido podem ser obtidos por meio de técnicas mais simples e prontamente disponíveis. Além disso, o TxF pode não estar disponível em versões futuras do Microsoft Windows. Para obter mais informações e alternativas ao TxF, confira Alternativas ao uso do NTFS transacional.]

Cria um link simbólico como uma operação transacionada.

Sintaxe

BOOLEAN CreateSymbolicLinkTransactedA(
  [in] LPCSTR lpSymlinkFileName,
  [in] LPCSTR lpTargetFileName,
  [in] DWORD  dwFlags,
  [in] HANDLE hTransaction
);

Parâmetros

[in] lpSymlinkFileName

O link simbólico a ser criado.

[in] lpTargetFileName

O nome do destino para o link simbólico a ser criado.

Se lpTargetFileName tiver um nome de dispositivo associado a ele, o link será tratado como um link absoluto; caso contrário, o link será tratado como um link relativo.

[in] dwFlags

Indica se o destino do link, lpTargetFileName, é um diretório.

Valor Significado
0x0
O destino do link é um arquivo.
SYMBOLIC_LINK_FLAG_DIRECTORY
0x1
O destino do link é um diretório.

[in] hTransaction

Um identificador para a transação. Esse identificador é retornado pela função CreateTransaction .

Valor retornado

Se a função for bem-sucedida, o valor retornado será diferente de zero.

Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.

Comentários

Links simbólicos podem ser links absolutos ou relativos. Links absolutos são links que especificam cada parte do nome do caminho e links relativos são determinados em relação ao local em que os especificadores de links relativo estão em um certo caminho. Links relativos são especificados usando as seguintes convenções:

  • Convenções de ponto (. e ..), por exemplo, ".. \" resolve o caminho relativo ao diretório pai.
  • Nomes sem barras (\\)— por exemplo, "tmp" resolve o caminho relativo ao diretório atual.
  • Relativo raiz — por exemplo, "\Windows\System32" resolve como "unidade atual:\Windows\System32".
  • Diretório de trabalho atual – relativo – por exemplo, se o diretório de trabalho atual for C:\Windows\System32, "C:File.txt" será resolvido como "C:\Windows\System32\File.txt".
    Observação Se você especificar um link relativo ao diretório de trabalho atual, ele será criado como um link absoluto, devido à maneira como o diretório de trabalho atual é processado com base no usuário e no thread.
     
No Windows 8 e Windows Server 2012, essa função é compatível com as tecnologias a seguir.
Tecnologia Com suporte
Protocolo SMB (SMB) 3.0 No
TFO (Failover transparente) do SMB 3.0 No
SMB 3.0 com compartilhamentos de arquivos de expansão (SO) No
Sistema de arquivos de Volume Compartilhado Clusterizado (CsvFS) No
ReFS (Sistema de Arquivos Resiliente) No
 

O SMB 3.0 não dá suporte ao TxF.

Observação

O cabeçalho winbase.h define CreateSymbolicLinkTransacted 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 Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho winbase.h (inclua Windows.h)
Biblioteca Kernel32.lib
DLL Kernel32.dll

Confira também

Funções de gerenciamento de arquivos

Links simbólicos

NTFS transacional