Como obter um nome de ficheiro mais de um nome de ficheiro longo

Traduções de Artigos Traduções de Artigos
Artigo: 175512 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Nesta página

Sumário

Em determinadas circunstâncias, poderá ser necessário obter nome de ficheiro curtos equivalentes de um ficheiro que tenha um nome de ficheiro longo. O exemplo abaixo permitem-lhe seleccionar um ficheiro que tenha um nome de ficheiro longo e devolver é o nome de ficheiro curto utilizando a chamada de função da API do GetShortPathName.

Mais Informação

O exemplo de código seguinte inclui uma função que irá converter nomes de ficheiro longos para os respectivos nome de ficheiro curtos equivalentes e também inclui uma demonstração simples de utilizar a função.

Exemplo passo a passo

  1. Crie um novo projecto EXE padrão no Visual Basic. É criado o Form1 por predefinição.
  2. Coloque um CommandButton no Form1.
  3. Coloque um controlo caixa de diálogo comuns no formulário.
  4. No menu Inserir , seleccione o módulo para adicionar um módulo de código único de projecto.
  5. Adicione o seguinte código ao Module1:
       Declare Function GetShortPathName Lib "kernel32" _
          Alias "GetShortPathNameA" (ByVal lpszLongPath As String, _
          ByVal lpszShortPath As String, ByVal cchBuffer As Long) As Long
    
       Public Function GetShortName(ByVal sLongFileName As String) As String
           Dim lRetVal As Long, sShortPathName As String, iLen As Integer
           'Set up buffer area for API function call return
           sShortPathName = Space(255)
           iLen = Len(sShortPathName)
    
           'Call the function
           lRetVal = GetShortPathName(sLongFileName, sShortPathName, iLen)
           'Strip away unwanted characters.
           GetShortName = Left(sShortPathName, lRetVal)
       End Function
    					
  6. Adicione o seguinte código ao Form1:
       Private Sub Command1_Click()
         Dim msg As String
         CommonDialog1.FileName = "*.*"
         CommonDialog1.ShowOpen
         msg = "Long File Name: " & CommonDialog1.filename & vbCrLf
         msg = msg & "Short File Name: " & GetShortName(CommonDialog1.filename)
         MsgBox msg
       End Sub
    					
  7. Execute o projecto premindo a tecla F5. Clique no botão de comando para mostrar a caixa de diálogo ' Abrir '. Navegue a caixa de diálogo ' Abrir ' e localizar um ficheiro que tenha um nome de ficheiro longo. Seleccione o ficheiro e clique em OK.
  8. A caixa de mensagem mostra o nome de ficheiro longos juntamente com o nome de ficheiro mais.

Referências

Para obter informações adicionais, consulte o seguinte artigo na base de dados de conhecimento da Microsoft:
154822Como obter um nome de ficheiro longo de um nome de ficheiro curto

Propriedades

Artigo: 175512 - Última revisão: 11 de março de 2005 - Revisão: 3.2
A informação contida neste artigo aplica-se a:
  • Microsoft Visual Basic Control Creation Edition
  • Microsoft Visual Basic 5.0 Learning Edition
  • Microsoft Visual Basic 5.0 Professional Edition
  • Microsoft Visual Basic 5.0 Enterprise Edition
  • Microsoft Visual Basic 4.0 Standard Edition
  • Microsoft Visual Basic 4.0 Professional Edition
  • Microsoft Visual Basic 4.0 32-Bit Enterprise Edition
  • Microsoft Visual Basic 6.0 Learning Edition
  • Microsoft Visual Basic 6.0 Professional Edition
  • Microsoft Visual Basic Enterprise Edition for Windows 6.0
Palavras-chave: 
kbmt kbdocfix kbhowto KB175512 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 175512

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com