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 manipulador para o arquivo. O arquivo deve ser aberto com o direito de acesso GENERIC_ALL 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 de arquivo curto, se ele 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á êxito.
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 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. 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. |
Comentários
O chamador dessa função deve ter o privilégio SE_RESTORE_NAME . Para obter mais informações, confira Executar com privilégios especiais.
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 | Sim |
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) | Sim |
ReFS (Sistema de Arquivos Resiliente) | No |
O SMB 3.0 não dá suporte a nomes curtos em compartilhamentos com funcionalidade de disponibilidade contínua. Nomes curtos não são recomendados em CsvFs.
Observação
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 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 XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2003 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | winbase.h (incluir Windows.h) |
Biblioteca | Kernel32.lib |
DLL | Kernel32.dll |