如何使用批处理或vbs打开多个MP3文件,就像Ctrl + A Enter一样

如何使用批处理或vbs打开多个MP3文件,就像Ctrl + A Enter一样

正如标题所示,我想制作一个批处理或 vbs 脚本文件,以便开始播放音乐文件夹中的音乐。我无法制作播放列表,因为我经常更新此文件夹,而且我不想一直更新播放列表。

我知道我可以创建此文件夹的快捷方式并按ctrl+aenter,但我很懒。那么有没有可能这样做?

哦,还有这个:for %%i in (*.mp3) do start %%i不能正常工作。

答案1

使用 Windows Media Player 自动打开 MP3 文件进行播放

如何使用批处理或vbs打开多个MP3文件,就像Ctrl + A Enter一样

(下面有两个脚本解决方案(batchVB script)用于打开MP3单个文件夹中的所有文件,该文件夹Windows Media Player将逐首播放歌曲,而无需您在WMP每首歌曲结束后手动执行操作或创建播放列表。)

(这模拟了进入一个只有MP3文件的文件夹,执行Ctrl+A然后按Enter或选择Open打开Windows Media Player选定MP3文件并依次播放。

(在这种情况下,MP3文件夹 ( Music)MP3经常添加其他文件,因此很容易执行Ctrl+A然后按Enter才能WMP逐一打开并播放。

本质上,这些是播放文件夹中所有文件的方法MP3,无需创建播放列表,也无需执行Ctrl+A然后手动按下Enter


VBS 脚本解决方案

需要更新的行WshShell.Run "D:\Test\TestMP3Only"指向完成以下操作的文件夹位置:Ctrl+A然后按Enter当您手动执行此操作时。

此处的预期是此文件夹位置仅包含 MP3 文件。否则其他文件也将在此文件夹位置打开。

将其保存到名为的文本文件中<something>.vbs,然后单击它以启动。我测试过,这有效,并且在 Windows 上使用原生 Windows Media Player 播放完一首歌曲后会播放下一首歌曲。

Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "D:\Test\TestMP3Only"
Wscript.Sleep 500
WshShell.SendKeys "^a"
Wscript.Sleep 500
WshShell.SendKeys "{ENTER}"

批处理脚本解决方案

需要更新的行SET MP3Folder=D:\Test\TestMP3Only指向完成以下操作的文件夹位置:Ctrl+A然后按Enter当您手动执行此操作时。

此处的预期是此文件夹位置仅包含 MP3 文件。否则其他文件也将在此文件夹位置打开。

将其保存到名为的文本文件中<something>.cmd,然后单击它以启动。我测试过,这有效,并且在 Windows 上使用原生 Windows Media Player 播放完一首歌曲后会播放下一首歌曲。

@ECHO OFF
SET MP3Folder=D:\Test\TestMP3Only
SET TempVBSFile=%tmp%\~tmpMP3Temp.vbs

:VBSDynamicBuild
IF EXIST "%TempVBSFile%" DEL /F /Q "%TempVBSFile%"
ECHO Set WshShell = WScript.CreateObject("WScript.Shell") >>"%TempVBSFile%"
ECHO WshShell.Run "%MP3Folder%"                           >>"%TempVBSFile%"
ECHO Wscript.Sleep 500                                    >>"%TempVBSFile%"
ECHO WshShell.SendKeys "^a"                               >>"%TempVBSFile%"
ECHO Wscript.Sleep 500                                    >>"%TempVBSFile%"
ECHO WshShell.SendKeys "{ENTER}"                          >>"%TempVBSFile%"

CSCRIPT //nologo "%TempVBSFile%"
GOTO EOF

相关内容