【问题标题】:Batch/VB Script to set of System BeepBatch/VB 脚本设置系统蜂鸣声
【发布时间】:2014-03-30 01:41:03
【问题描述】:

我想知道,对于批处理、vbs 或任何其他内置的 Windows 语言,我可以让系统哔声(就像您在启动时按下一个键时发出的哔声)消失吗?我不确定这是否可能,但任何帮助都会很棒!

【问题讨论】:

  • 计算机现在通常不配备“扬声器”或换能器作为降低成本的措施,因此control G 在这样的 PC 上不会发出任何声音。
  • rundll32 kernel32,Beep(从扬声器发出哔声) rundll32 user32,MessageBeep(发出默认哔声 - 通常来自声卡)。

标签: batch-file vbscript system beep


【解决方案1】:

对于 Vista 及更高版本,您可以使用 forfiles(在批处理文件中使用的代码示例)

forfiles /p "%~dp0." /m "%~nx0" /c "cmd /c echo 0x07"

【讨论】:

  • @Monacraft,它怎么不起作用?这个对我有用。现在我在一台 xp 机器上并使用资源工具包中的 forfiles,pc 发出哔哔声。我在其他情况下使用了相同/相似的代码并且有效。字符 0x07 与 Control+G 相同。
  • 我已经在 Windows 7 上使用资源工具包进行了尝试,但它产生了这个错误:ERROR: Files of type "C:\beep.bat" not found.
  • 请注意,如果您将 "%~f0" 替换为 "%~nx0",则此方法有效。我会编辑你的答案。
  • @Monacraft,我的错。我忘记了在过去一小时内编写%~fx 构造的次数,我自动输入了它。还包括对批处理文件目录的路径引用以避免进一步的问题。谢谢。
【解决方案2】:

使用ctrl+G(在cmd中显示为^G)非常容易。

简单输入:

Echo ^G
Echo ^G >> beep.txt
Type beep.txt

这只能在 CMD 中使用,除非您将输出重定向到一个文本文件(如上所示),然后您可以将其复制到您的批处理文件中,或者当您想发出哔哔声时将其复制到文件中。987654324@ p>

记住上面代码中^G是通过按键Ctrl+g实现的。

莫娜

【讨论】:

  • 酷!谢谢。有什么办法可以让声音变长一点?
  • 您可以在同一行的一行中添加更多的控制G字符,使其更明显。
  • ^G 可以通过按住“Alt”,然后在键盘右侧输入“7”来生成。
【解决方案3】:

对于 VBScript:

WScript.StdOut.Write Chr(7)

【讨论】:

    【解决方案4】:

    在 PowerShell 中这应该可以工作:

    [char]0x7
    

    正如@Joey 指出的那样,另一个选项是Beep() 方法:

    [Console]::Beep()
    [Console]::Beep(500, 300)
    

    【讨论】:

    • 在 PowerShell 中,您可以只使用 [Console]::Beep 甚至更改频率和持续时间。
    【解决方案5】:

    你可以输入

    echo ^G
    

    可以通过按住“Alt”,然后在键盘右侧输入“7”来生成^G。然后按 enter 听到哔声。

    【讨论】:

      【解决方案6】:
      Set oShell = CreateObject("Wscript.Shell")    
      oShell.Run "%comspec% /c echo " & Chr(7),0,false   
      Set oShell = nothing
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-12-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-06-20
        相关资源
        最近更新 更多