gpt4 book ai didi

windows - 如何使用批处理文件从内置 pc 扬声器启动系统 "beep"?

转载 作者:可可西里 更新时间:2023-11-01 12:40:33 27 4
gpt4 key购买 nike

我以交互模式编写了一个批处理脚本,用于执行一些任务。

有时,这些任务需要很长时间才能完成,然后批处理会询问用户是否要继续执行下一个任务,或者返回批处理的主菜单或...等

现在,我想做的是添加一个“交互式警报”命令,它会发出一声短促的哔哔声(例如:就像我们打开 PC 时的哔哔声),以提醒批处理用户有新问题。

我不知道这是否可能,但对我来说最重要的是,不要使用 WMP 之类的 GUI 应用程序..我只想从后台执行此操作,即使必须从免费扬声器或使用第三方 CLI 应用程序发出哔哔声(顺便说一句,我已经在我的 Win7-x64 上安装了 Cygwin)。

请注意,我会在交互式问题之前添加那个警报命令,等待用户的回答进入下一阶段,所以我不能通过发出真正的错误蜂鸣声来完成批处理!

那么,有人能告诉我该怎么做吗?

感谢您的帮助:)

最佳答案

警告: rundll32.exe Kernel32.dll,Beep 750,300由于 rundll32 不再接受整数值(再次通过命令行)并且这将使用太长的默认值(和频率很烦人):

REM Again, with warnings about running this from the command line...
rundll32.exe Kernel32.dll,Beep 750,300

rundll32.exe cmdext.dll,MessageBeepStub

rundll32 user32.dll,MessageBeep

使用 rundll 函数,您将不需要像 ^G 这样的特殊符号.使用第一种方法,您还可以设置 frequency and the time you want发出哔哔声,但会看到警告,这些参数不再适用于命令行中的现代系统,而是会播放烦人的默认值。


更新

其他选项是:

powershell "[console]::beep(500,300)"

或使用 systemSounds.bat

call systemsounds.bat  beep

蜂鸣声的能力取决于主板以及主板是否有系统扬声器——这种情况越来越少见,因为系统往往只依赖于“普通”扬声器。另一种方法是通过这些扬声器播放声音。以下是一些选项:

使用 SAPI.SpVoice 的说话能力:

mshta "javascript:code(close((V=(v=new ActiveXObject('SAPI.SpVoice')).GetVoices()).count&&v.Speak('beep')))"

在这里this被包装在批处理文件中,单词可以作为参数传递。

SAPI.SpVoice可以用来玩wav文件,并且您有一些与默认 Windows 安装打包在一起。你可以用这个 script :

spplayer.bat  "C:\Windows\Media\Windows Navigation Start.wav"

另一个选项:Using the windows media player active-x objects播放声音。在 Windows XP 上它不是默认安装的,但我认为对于较新的 Windows 版本它是。还能玩mp3文件:

call mediarunner.bat "C:\Windows\Media\Ring03.wav"

还有一个有点晦涩 - 使用 <bgsound>来自 Internet Explorer 的标签(也可以播放 mp3 文件)。这是 script :

call soundplayer.bat "C:\Windows\Media\tada.wav"

这是使用 BEL 的方法使用易于复制粘贴的代码来产生声音的字符(我称之为 beeper.bat ):

@echo off
setlocal
::Define a Linefeed variable
(set LF=^
%=-=%
)

for /f eol^=^%LF%%LF%^ delims^= %%A in (
'forfiles /p "%~dp0." /m "%~nx0" /c "cmd /c echo(0x07"'
) do echo(%%A

关于windows - 如何使用批处理文件从内置 pc 扬声器启动系统 "beep"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27079534/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com