Как получить короткое имя файла из длинного имени файла

ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.

Эта статья на английском языке:175512
Эта статья помещена в архив. Она предлагается "как есть" и обновляться не будет.
Аннотация
В некоторых случаях может потребоваться получить короткое имя файла соответствует файла, который имеет длинное имя файла. В приведенном ниже примере позволит выбрать файл, который имеет длинное имя файла и возвращать это короткое имя файла, с помощью вызова функции API GetShortPathName.
Дополнительная информация
Следующий пример кода включает функцию, которая преобразует длинные имена файлов в их эквиваленты короткое имя файла, а также простой пример использования функции.

Пошаговый пример

  1. Создайте новый проект стандартный EXE-файла в Visual Basic. По умолчанию будет создана форма Form1..
  2. Поместите элемент управления CommandButton на Form1..
  3. Поместите элемент управления общего диалогового окна в форме.
  4. ИзВставкаменю выборамодульЧтобы добавить код одного модуля в проект.
  5. Добавьте следующий код в 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. Добавьте следующий код в форму 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. Запустите проект, нажав клавишу F5. Нажмите на кнопку команды для отображения диалогового окна Открытие. Выберите диалоговое окно Открыть и найдите файл, содержащий длинное имя файла. Выберите файл и нажмите кнопку ОК.
  8. В окне сообщения отображается имя длинные вместе с его именем краткий формат файла.
Ссылки
Для получения дополнительных сведений щелкните следующий номер статьи базы знаний Майкрософт::
154822Как получить длинное имя файла из короткого имени файла

Свойства

Номер статьи: 175512 — последний просмотр: 12/05/2015 08:08:01 — редакция: 2.0

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 6.0 Professional Edition

  • kbnosurvey kbarchive kbdocfix kbhowto kbmt KB175512 KbMtru
Отзывы и предложения
ERROR: at System.Diagnostics.Process.Kill() at Microsoft.Support.SEOInfrastructureService.PhantomJS.PhantomJSRunner.WaitForExit(Process process, Int32 waitTime, StringBuilder dataBuilder, Boolean isTotalProcessTimeout)