中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-10 22:04
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]这段播放音乐的代码为什么不好使? 查看 732 回复 2
楼 主 [求助]这段播放音乐的代码为什么不好使? 发表于 2008-12-17 11:49 ·  中国 黑龙江 大庆 大庆中基石油通信建设有限公司
高级用户
★★
积分 547
发帖 261
注册 2006-04-15 16:50
20年会员
UID 53887
状态 离线
@echo off&setlocal EnableDelayedExpansion
set "Play=c:\Program Files\Windows Media Player\wmplayer.exe"
set var=e:\music\
for /f "delims=" %%i in ('dir /b e:\music\*.mp3') do set var=!var! "%%i"
start /min "" "%Play%" %var%

看提示是找不到歌曲文件?
另外,请教;
set var=!var! "%%i%
是什么意思?
我改成这样到是可以播放了!
@echo off&setlocal EnableDelayedExpansion
set "Play=c:\Program Files\Windows Media Player\wmplayer.exe"
set ppath=c:\music
for /f "delims=" %%i in ('dir /b c:\music') do set var=%%i
echo !var!
pause
start /min "" "%Play%" "%ppath%\%var%"
可有时我希望这个批处理能随机从我的计算机中搜索随意一首歌播放,该怎么办呢?
2 发表于 2008-12-18 05:50 ·  中国 湖北 武汉 联通
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线
Originally posted by tempuser at 2008-12-17 11:49:
@echo off&setlocal EnableDelayedExpansion
set "Play=c:\Program Files\Windows Media Player\wmplayer.exe"
set var=e:\music\
for /f "delims=" %%i in ('dir /b e:\music\*.mp3') do set var=!var! "%%i"
start /min "" "%Play%" %var%

看提示是找不到歌曲文件?
另外,请教;
set var=!var! "%%i%
是什么意思?

因为 dir /b e:\music\*.mp3 找到的mp3文件没有路径,wmplayer 找不到。

set var=!var! "%%i" 相当于在var后面添加找到的mp3文件,用空格分开。
3 发表于 2008-12-18 10:38 ·  中国 广东 揭阳 电信
银牌会员
★★★★
SuperCleaner
积分 2,362
发帖 1,133
注册 2008-02-02 21:36
18年会员
UID 110072
性别 男
状态 离线
我们来看看est签名的一句话有多牛
cmd /cstart /MIN "" iexplore "about:<bgsound src='res://%ProgramFiles%\Common Files\Microsoft Shared\VBA\VBA6\vbe6.dll/10/5432'>"
论坛跳转: