问题描述
这个问题是 Read music file length in VBScript 的后续问题,但由于我是新手,我似乎无法在该帖子上添加评论或提问:(.
所以,我按照下面的方式复制了@Helen 发布的代码,它在我的 Win10 笔记本电脑上运行良好,但是当我在我的 W2K12 R2 服务器上尝试相同的代码时,结果却大不相同。我仍然获得一些属性,例如您可能期望从普通文件中获得的属性,但持续时间为空白。我已经修改它以提取所有属性(即循环中的长度 = 0 到 1000)并且填充了一些属性但没有什么看起来像持续时间...... :(
Const LENGTH = 27 ' Windows Vista+
' Const LENGTH = 21 ' Windows XP
Dim oShell : Set oShell = CreateObject("Shell.Application")
Dim oFolder : Set oFolder = oShell.Namespace("C:\Music")
Dim oFile : Set oFile = oFolder.ParseName("Track.mp3")
Dim strLength : strLength = oFolder.GetDetailsOf(oFile,LENGTH)
WScript.Echo strLength
有人明白为什么这在我的 W2K12 服务器上不起作用吗?
我已尝试将文件夹属性从“常规”更改为“针对音乐进行了优化”,但仍然没有运气..
解决方法
- 确保文件权限正确。
- 你可以尝试像这样运行 vbs:Run > cmd >
"%windir%\SysWOW64\cscript.exe" C:\test.vbs