文件长、短格式的转换

lyhyp 2003-05-12 09:59:49
请教:在VB中怎样将WINDOWS的长文件夹、文件名转换成短格式!谢谢。运行DOS命令时,文件夹不能含有空格,该怎样处理
...全文
54 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
sxs69 2003-05-12
  • 打赏
  • 举报
回复
Private Declare Function GetShortPathName Lib "kernel32" Alias "GetShortPathNameA" (ByVal lpszLongPath As String, ByVal lpszShortPath As String, ByVal cchBuffer As Long) As Long

Private Sub Command1_Click()
Dim PathName As String, S As String, ShortPathName As String
PathName = "C:\WINDOWS\Media\Windows XP 默认值.wav"
S = String(LenB(PathName), Chr(0))
GetShortPathName PathName, S, Len(S)
ShortPathName = Left(S, InStr(S, Chr(0)) - 1)
End Sub
dongyoushen 2003-05-12
  • 打赏
  • 举报
回复

【专案】的【引用项目】中,加入【Microsoft Scripting Runtime】!

程序码大致如下:

Private Sub Form_Load()
Dim fso As FileSystemObject
Dim fsoFile As File

Set fso = New FileSystemObject
Set fsoFile = fso.GetFile("C:\MyReallyLongName.txt")
MsgBox fsoFile.ShortPath

Set fsoFile = Nothing
Set fso = Nothing
End Sub
'结果就是 C:\MYREAL~1.TXT
————————————————
另外我有用GetShortPathName 这个 API 函数转换文件名的源程序,也需要的话留下信箱.
dongyoushen 2003-05-12
  • 打赏
  • 举报
回复
我有源文件,没地方上传,把你的邮箱给告诉我。我发给你。

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧