在 VBScript 中读取音乐文件长度

2023-12-15

我只是想知道是否有一种方法可以通过 VBScript 将 mp3 文件的长度以秒为单位获取到变量中。


(改编自我的答案关于 JScript 的类似问题。)

您可以使用GetDetailsOfWindows Shell 的方法Folder对象获取音频文件长度。此技术支持所有音频文件类型,其元数据可以由 Windows 资源管理器本机读取和显示。

但请注意,不同 Windows 版本上的 Length 属性索引有所不同:在 Windows XP/2003 上为 21,在 Windows Vista+ 上为 27。看这一页 and 这是我的回答了解详情。您需要在脚本中考虑到这一点。

示例代码:

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

输出示例:

00:05:18

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 VBScript 中读取音乐文件长度 的相关文章

  • ASP/VBScript - Int() 与 CInt()

    ASP VBScript 之间有什么区别Int and CInt Int http www w3schools com Vbscript func int asp Int 函数返回指定数字的整数部分 CInt http www w3scho
  • VBscript 使用输出参数从 MySQL 调用存储过程[重复]

    这个问题在这里已经有答案了 编辑20220219 使用下面的 VBSCRIPT 代码解决 SQL CALL NewCheckData pOld cn execute SQL SQL SELECT pOld Set RS cn execute
  • VBScript 条件短路解决方法

    我有一个必须维护的大型经典 ASP 应用程序 并且我多次发现自己因缺乏短路评估能力而受挫 例如 VBScript 不会让你逃脱 if not isNull Rs myField and Rs myField lt gt 0 then 因为如
  • 暗淡和公共有什么区别?

    今天提出了一个关于范围的问题 这引起了我的思考 我一直了解 VBScript 范围以及如何声明全局和本地 我突然想到我从来没有使用过Public变量但倾向于使用Dim相反 在全局声明时 据我了解Dim是相同的Public 但如果是这样的话
  • 使用VBS脚本检查字符串是否包含特定字符

    我的脚本正在做以下几点 检索所有我选择的文件夹文件 按日期对它们进行分类 从最近的到较早的 在窗口中显示它们 这是我的 VBS 脚本 我检索它here http codes sources commentcamarche net sourc
  • 在 VBScript 中导航 XML 节点(对于 Dummy)

    我正在尝试编写一个脚本来为我操作 xml 文件中的一些数据 我对 VBScript 还很陌生 但有 VB NET 和 VBA 背景 所以我觉得我知道自己在做什么 我认为可能有更好的方法来导航文件 而不是对每一行进行大量调用 InStr 或类
  • VBScript 中的对象/类字典

    vbscript 中是否可以有对象 类的字典 例如 Class employeeclass Public first last salary End Class Dim employeedict Set employeedict Creat
  • 如何使用 java/vb 脚本调用自定义 ActiveX dll 中的方法

    我使用 VB6 创建了一个 ActiveX dll 并使用打包和部署向导将其打包 生成了一个 cab 文件和一个演示 HTML 页面 此 ActiveX dll 包含一个 simgle 方法 该方法返回字符串且不接受任何参数 我遇到的麻烦是
  • 如何从 HTA 中启动批处理文件

    我有一个基本的 HTA 其中我尝试通过按钮启动批处理文件 但是当我尝试启动批处理文件时 它不会运行 当我按下按钮时 将启动命令提示符窗口 但不会运行脚本 这是代码的简单示例
  • VBScript:从 Scripting.Dictionary 中对项目进行排序

    我有下面的代码 它获取这样的数据 姓名 1 姓名 4 姓名 2 姓名 3 并像这样列出 是一个复选框 姓名 1 姓名 4 姓名 2 姓名 3
  • 如何在远程机器上执行vbs文件

    如何在不使用 PsExec 的情况下执行位于同一域中的远程计算机上的 VBScript 我尝试了以下代码 但没有运气 Sub RunCommand strComputer Command Set objWMIService GetObjec
  • 如何设置任务在使用 vbs 登录时以当前用户身份运行而无需管理员权限?

    从命令行 我可以创建一个在登录时运行的计划任务 无需管理员权限或用户输入密码来设置任务 但是我必须使用 xml 文件来执行此操作 下面是一个示例 xml 其中 Domain User 部分必须在运行时替换为当前用户的域和名称
  • 使用参数将变量从 vbscript 传递到批处理文件

    请问如何将 inp 变量从这段 vb 传递到我的名为 job bat 的批处理 确实 在从 job bat 进行回显 echo 2 时 我注意到 inp 未正确传递 提示命令视图 inp而不是从 vbs 检索到的值 谢谢 For Each
  • 为什么 vbscript Mid 函数显示错误“无效的过程调用或参数:Mid”

    您好 下面是我的 ASPClassic 代码 其中 csvData 是一个包含变量的非常大的字符串 现在在 Mid 函数调用的这一行中出现错误 无效的过程调用或参数 Mid 为什么会发生这种情况 Dim dataLen Dim fromLe
  • 使用 cscript.exe 而不是 wscript.exe 在 VBScript 中执行文件

    我知道如何使用 wscript exe 执行 exe 如下所示 Set WshShell WScript CreateObject WScript Shell WshShell Run c myprogram exe 但我被迫使用 cscr
  • 使用 VBscript 检查计算机是否被锁定

    如何使用 VBscript 检查计算机是否已被锁定 我想在计算机锁定后停止应用程序运行 并在计算机解锁后再次运行它 您可以尝试检查是否存在logonui exe过程 如果找到它 则计算机已锁定或未登录 Function IsLocked s
  • 从 VBS 运行同一目录中的批处理文件

    我有一个 VBScript 应该运行 bat 或 vbs 文件 但它不起作用 它出现一个错误 指出无法找到该文件 无论我是否放入文件路径 我认为这并不重要 因为它位于同一目录中 所以我的问题是 如何从 VBScript 中启动 bat 文件
  • ATL创建的COM接口继承IDispatch但后期绑定不起作用

    这是我的 IDL 文件 IFrame 是一个双接口 同时继承了 IDispatch 和 IUnknown object uuid C5AD0517 37FC 479C 9C7A A063B17E4A2E dual nonextensible
  • 打印出按文件名排序的目录中的文件

    我正在尝试打印目录中的文档 按文件名升序排序 我有下面的脚本来打印文档 它可以工作 但它是随机顺序的 有什么方法可以根据名称对 文件 集合进行排序吗 Set the TargetFolder TargetFolder C Temp Hewi
  • 如何在VBS中使用Excel内置常量[重复]

    这个问题在这里已经有答案了 我想使用VBScript而不是VBA来处理EXCEL 但是我在调 用Range Find方法时遇到了代码错误 见下文 Function find range wb domain var Dim sheet Dim

随机推荐

  • Haskell 树上折叠的变化

    给定一棵树定义为 data Tree a Leaf Node Tree a a Tree a deriving Eq Show 我想使用该功能 foldTree b gt a gt b gt b gt b gt Tree a gt b fo
  • 如何阻止 Filezilla 更改我的换行符?

    我正在从 Linux Web 服务器下载 perl CGI 文件 它有 Unix 换行符 我在 Windows PC 上用一个不错的文本编辑器 Geany 编辑它 它保留了这些换行符 然后我用 Filezilla 再次上传它 它有 DOS
  • 如何在 Python 中将数字列表转换为 jsonarray

    我有以下格式的一行 row 1L 0 1 0 2 1234L 1 134L 2 现在 我想要在文件中写入以下内容 1 0 1 0 2 1234 1 134 2 基本上将上面转换为 jsonarray 吗 Python 中是否有内置方法 库或
  • 如何解决 org.postgresql.jdbc.PgConnection.createClob() 尚未实现

    例外情况 当启动 spring boot 应用程序时 我收到了 引起原因 java sql SQLFeatureNotSupportedException 方法 org postgresql jdbc PgConnection create
  • 如何在禁用 SSL 卸载的情况下使 ARR 正常工作? 502.3 错误网关

    所以我已经遇到这个错误好几天了 我用谷歌搜索了又搜索 但似乎没有什么可以解决我的情况 我希望有人可以提供帮助 问题 当我在 ARR 路由规则 中禁用 SSL 卸载时 我收到以下信息 502 Web 服务器在充当 Web 服务器时收到无效响应
  • 学习使用 Xcode 和 Objective-C 基础知识进行 iPhone 开发的最佳地点是哪里? [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 当我说最好的地方时 我指的是实体课程 研讨会 讲习班等 它可能遍布世界各地 Thanks 我会避开神学院来学习 Objective C 我听说过关于大书呆子牧场培训班
  • C++ 多重继承转换如何工作?

    这个问题帮助我理解了一些 但我的问题与他们的略有不同 据我了解 C 中的基本类型转换涉及将内存中的结构重新解释为不同的结构 例如 class Building int sqFootage class Office public Buildi
  • RMarkdown 生成 HTML 文档注释/评论窗格

    我正在从 Word 文档报告转向使用 RMarkdown 生成的 HTML 文件 然而 我的客户在放弃 Word 后会错过的一大功能是能够轻松地直接向文档添加注释 是否存在一些 HTML Java 等代码片段 可以在 HTML 文档的一侧添
  • ASP GridView 在按钮单击时获取行值

    我正在做什么 单击图像按钮时重置用户密码 到目前为止已完成 添加了 GridViewCommandEventHandler 它正确触发 使用代码来自MSDN 我的 e CommandArgument 得到一个空字符串 并且在运行时抛出错误
  • 运行节点应用程序时 bcrypt 无效的 elf 标头

    我正在为学校开发一个 Nodejs 项目 我无法使用 npm 安装 bcrypt 所以我安装了 bcrypt nodejs 并且该项目昨天运行良好 但是今天 当我做 节点应用程序 时 我遇到了这个错误 node modules bcrypt
  • PHP $_REQUEST 作为数组

    我有一个搜索表单 我想将搜索词作为数组 REQUEST 这样我就可以列出每个搜索词 将每个搜索词包装在一个跨度中以进行样式设置 我怎么做 编辑 这是请求的代码
  • Swift 3.0 无法解析 DispatchQueue 的标识符

    我几个小时以来一直试图找到这个问题的答案 但仍然无济于事 我正在尝试使用以下代码 func fetchPosts ref child Amore child Posts observeSingleEventOfType Value with
  • 我正在尝试将 SFTP 文件(SAS 数据集或令牌)从一台服务器传输到 SAS 中的另一台服务器

    这是我第一次尝试使用 SAS 对文件进行 SFTP 我尝试使用文件名语句 但出现了一些错误 let user userid filename source sftp input sas7bdat user user pass passwor
  • 如何使用多部分实体将图像上传到服务器?

    我正在创建一个应用程序 并在我的应用程序中添加了一个选项来从图库浏览图像 然后上传到服务器 我之前问过这个问题 但没有得到好的答案 为了上传图像 我正在遵循本教程http mayanklangalia blogspot in 2014 04
  • 在 DLL 上使用 WPF 动态创建图像(而不是 GDI+)

    我需要动态生成图像 在阅读教程后here我意识到我可以使用 WPF 中的所有控件和布局来生成渲染 然后将其另存为 JPG 这个想法是使用它来代替 GDI 这是相当原始的 问题是 如何创建一个常规 dll 文件 该文件将以编程方式生成 WPF
  • 使用进程构建器执行两个命令

    我正在尝试编写一个程序 从命令提示符编译另一个 java 文件 不过我有一个问题 此时 它已成功执行编译 Mocha java 的第一部分 但是 我希望它也执行该文件并显示它的输出内容 它什么也没显示 有什么建议么 pb new Proce
  • 以编程方式将加载项宏添加到快速访问工具栏

    我有一个用于格式化 Excel 报告的宏 该宏需要在许多不同的工作簿上运行 因为每天都会生成报告并将其保存到新文件中 这已经在我的个人作业簿中了 我现在需要分享这个宏 我的计划是将该加载项放在我的本地加载项文件夹中 在那里进行任何更新并运行
  • 为Nextjs动态路由添加前缀

    我定义了很多路由 其中 一条路由专用于用户配置文件 每个用户都有一个可通过 HTTP example com username 访问的公共配置文件 我尝试过创建文件pages username js但它似乎不起作用 有没有办法在不通过用户名
  • 当主键具有不同名称时,如何使用 TPT 继承模型?

    针对旧数据库使用 Entity Framework 4 1 我无法生成一组非复数的 TPT 继承模型工作集 并且对公共主键使用不同的名称 我正在使用数据库表 组织 帐户 和 公司 如下所示 Organization Organization
  • 在 VBScript 中读取音乐文件长度

    我只是想知道是否有一种方法可以通过 VBScript 将 mp3 文件的长度以秒为单位获取到变量中 改编自我的答案关于 JScript 的类似问题 您可以使用GetDetailsOfWindows Shell 的方法Folder对象获取音频