Função SetFileShortNameA (winbase.h)
Define o nome curto do arquivo especificado. O arquivo deve estar em um volume do sistema de arquivos NTFS.
Sintaxe
BOOL SetFileShortNameA(
[in] HANDLE hFile,
[in] LPCSTR lpShortName
);
Parâmetros
[in] hFile
Um identificador para o arquivo. O arquivo deve ser aberto com o acesso GENERIC_ALL direito ou GENERIC_WRITE|DELETE e com o atributo de arquivo FILE_FLAG_BACKUP_SEMANTICS.
[in] lpShortName
Um ponteiro para uma cadeia de caracteres que especifica o nome curto do arquivo.
Especificar uma cadeia de caracteres vazia (de comprimento zero) removerá o nome do arquivo curto, se existir para o arquivo especificado pelo parâmetro hFile. Se um nome de arquivo curto não existir, a função não fará nada e retornará o sucesso.
Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Não há suporte para esse comportamento. O parâmetro deve conter uma cadeia de caracteres válida de um ou mais caracteres.
Valor de retorno
Se a função for bem-sucedida, o valor retornado não será zero.
Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError. GetLastError pode retornar um dos seguintes códigos de erro específicos para essa função.
Código de retorno | Descrição |
---|---|
|
O nome curto especificado não é exclusivo. |
|
O arquivo especificado foi aberto no modo que diferencia maiúsculas de minúsculas ou o nome curto especificado é inválido. |
Observações
O chamador dessa função deve ter o privilégio SE_RESTORE_NAME. Para obter mais informações, consulte Em execução com privilégios especiais.
No Windows 8 e no Windows Server 2012, essa função é compatível com as tecnologias a seguir.
Tecnologia | Suportado |
---|---|
Protocolo SMB (Bloco de Mensagens do Servidor) 3.0 | Sim |
TFO (Failover Transparente) do SMB 3.0 | Não |
SMB 3.0 com Compartilhamentos de Arquivos de Expansão (SO) | Não |
Sistema de Arquivos de Volume Compartilhado de Cluster (CsvFS) | Sim |
ReFS (Sistema de Arquivos Resiliente) | Não |
O SMB 3.0 não dá suporte a nomes curtos em compartilhamentos com capacidade de disponibilidade contínua. Nomes curtos não são recomendados em CsvFs.
Nota
O cabeçalho winbase.h define SetFileShortName 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 XP [somente aplicativos da área de trabalho] |
servidor com suporte mínimo | Windows Server 2003 [somente aplicativos da área de trabalho] |
da Plataforma de Destino |
Windows |
cabeçalho | winbase.h (inclua Windows.h) |
biblioteca | Kernel32.lib |
de DLL |
Kernel32.dll |