如何取得從長檔名的短檔名

文章翻譯 文章翻譯
文章編號: 175512 - 檢視此文章適用的產品。
全部展開 | 全部摺疊

在此頁中

結論

在某些情況下可能需要取得具有長檔名的檔案的對等簡短檔案名稱。以下範例可讓您選取具有長檔名的檔案,並傳回它是使用 GetShortPathName API 函數呼叫的簡短檔案名稱。

其他相關資訊

下列程式碼範例也包含函式,將會轉換成其等價的短檔名的長檔名,並且還包括簡單示範的函式的使用。

雖說是逐步範例

  1. 建立新的標準 EXE 專案在 Visual Basic 中時。預設會建立 Form1。
  2. 在 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. 訊息方塊會顯示長檔案名稱以及其簡短檔案名稱。

?考

如需詳細資訊請參閱 「 Microsoft 知識庫 」 中下列文:
154822如何從短檔名取得長檔名

屬性

文章編號: 175512 - 上次校閱: 2005年3月11日 - 版次: 3.2
這篇文章中的資訊適用於:
  • 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
關鍵字:?
kbmt kbdocfix kbhowto KB175512 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:175512
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

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