当我这样做时:
我听到令人讨厌的蜂鸣声。
当我执行以下任何操作时,我期望发出不同的声音,但它们都是相同的。如何获取原生声音?
[System.Media.SystemSounds]::Asterisk.Play()
[System.Media.SystemSounds]::Beep.Play()
[System.Media.SystemSounds]::Exclamation.Play()
[System.Media.SystemSounds]::Hand.Play()
[System.Media.SystemSounds]::Question.Play()
Run Code Online (Sandbox Code Playgroud)
(注意,我不想播放文件...我希望播放 Windows 原生的声音)
这不是 Powershell 代码问题或功能。这是 Windows 操作系统设置。
您的问题是因为它们是默认声音,只是指向.wav文件的指针。
如果您希望这些文件不同,则必须.wav从它们所在的 Windows 文件夹中选择不同的文件。
C:\Windows\Media
所以,至于你的评论***note, I do not want to play a file.***,是的,是的;但只是上面提到的系统默认位置上已有的一个。
只需转到控制面板并选择Sounds,或右键单击任务栏中的扬声器并选择声音。无论哪种方式,请根据需要手动更改。
那么你的选择就变成了这样......
[System.Console]::Beep()
[System.Console]::Beep(1000,300)
Run Code Online (Sandbox Code Playgroud)
或这个...
(New-Object System.Media.SoundPlayer $(Get-Random $(Get-ChildItem -Path "$env:windir\Media\*.wav").FullName)).Play()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4407 次 |
| 最近记录: |