如何取得系統(tǒng)的臨時(shí)目錄路徑?
發(fā)表時(shí)間:2024-06-19 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]GetTempPath取得的是一個(gè)DOS名稱(chēng),當(dāng)文件名長(zhǎng)度大于8時(shí),長(zhǎng)文件名格式“C:\Documents and Settings\Administrator\Local Settings\Temp”會(huì)顯示成“C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp”的短文件名格式,...
GetTempPath取得的是一個(gè)DOS名稱(chēng),當(dāng)文件名長(zhǎng)度大于8時(shí),長(zhǎng)文件名格式“C:\Documents and Settings\Administrator\Local Settings\Temp”會(huì)顯示成“C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp”的短文件名格式,如何根據(jù)自己需要取得系統(tǒng)臨時(shí)目錄的途徑,下面是一個(gè)新寫(xiě)的函數(shù),調(diào)用兩個(gè)API 實(shí)現(xiàn),相信許多朋友可能用得到。
Option Explicit
Private Declare Function GetLongPathName Lib "kernel32" Alias "GetLongPathNameA" (ByVal lpszShortPath As String, ByVal lpszLongPath As String, ByVal cchBuffer As Long) As Long
Private Declare Function GetTempPath Lib "kernel32" Alias "GetTempPathA" (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long
Sub GetTEMPfolder(Optional ByVal showlong As Boolean = True)
Dim longname As String, shortname As String
shortname = Space(256)
GetTempPath Len(shortname), shortname
longname = Space(1024)
GetLongPathName shortname, longname, Len(longname)
MsgBox "Tempfolder : " & IIf(showlong = True, longname, shortname)
End Sub
Private Sub Command1_Click()
GetTEMPfolder '長(zhǎng)文件名
GetTEMPfolder False '短文件名
End Sub