batch-file - 有没有办法让 VBS 文件在后台播放,同时仍然允许您使用批处理文件的其余部分?
问题描述
所以我目前有一些代码的背景音乐:
set "file=C:\Users\%username%\Downloads\TACZ\Data\TACZmusic.mp3"
( echo Set Sound = CreateObject("WMPlayer.OCX.7"^)
echo Sound.URL = "%file%"
echo Sound.Controls.play
echo do while Sound.currentmedia.duration = 0
echo wscript.sleep 100
echo loop
echo wscript.sleep (int(Sound.currentmedia.duration^)+1^)*1000) >C:\Users\%username%\Downloads\TACZ\Data\TACZmusic.vbs
cscript.exe //nologo C:\Users\%username%\Downloads\TACZ\Data\TACZmusic.vbs
echo Hi
pause >nul
我想要它,所以在歌曲开始播放代码后继续,同时,当你关闭窗口时它停止播放。这允许您在继续使用窗口的同时在后台播放音乐,但在您关闭窗口后它会继续播放。
set "file=C:\Users\%username%\Downloads\TACZ\Data\TACZmusic.mp3"
( echo Set Sound = CreateObject("WMPlayer.OCX.7"^)
echo Sound.URL = "%file%"
echo Sound.Controls.play
echo do while Sound.currentmedia.duration = 0
echo wscript.sleep 100
echo loop
echo wscript.sleep (int(Sound.currentmedia.duration^)+1^)*1000) >C:\Users\%username%\Downloads\TACZ\Data\TACZmusic.vbs
start /min C:\Users\%username%\Downloads\TACZ\Data\TACZmusic.vbs
echo Hi
pause >nul
我找不到一个不错的选择。根据我的发现,有些人说要让它成为一个非常小的窗口,并在另一个窗口中打开大部分代码。有两个问题,第一个是它不再是背景问题。那我还不如直接打开mp3文件。另一个问题是,即使您假装它不存在,您仍然必须手动关闭两个窗口,而不是方便地关闭一个并同时关闭它们。我还没有找到任何解决方案,也许这是不可能的。
让我更好地重申我的问题:有没有办法播放隐藏在背景中的音乐,所以除了主批处理文件之外没有打开可见的窗口,这样当你关闭批处理文件时,音乐就会停止,它仍然允许你做其他批处理文件上的操作,它不会卡在一遍又一遍循环的屏幕上。
解决方案
推荐阅读
- c - C中的混合快速排序+插入排序
- android - 实时数据库 Firebase 规则
- flutter - 如何检查是否使用 dart 中的命名构造函数创建了元素?
- java - 如何使用 parseSnapshot 仅解析特定数据?
- javascript - 使用 useEffect 从 TMDB 获取流派列表,axios 卡在加载中
- javascript - 为什么我会收到“Uncaught(in Promise)”错误呢?
- mysql - 如何编写 BigQuery 查询以查找表中特定列发生变化的行
- laravel - 未定义索引:laravel 中的姓氏
- java - URL 更改编码 + 而不是 %20
- java - 根据已颁发许可证的条件颁发许可证的信号量