PowerShell 技能连载 - 在后台播放声音

如果您的脚本执行起来需要较长时间,您可能会希望播放一段系统声音文件。以下是一个实现该功能的示例代码:

# find first available WAV file in Windows
$WAVPath = Get-ChildItem -Path $env:windir -Filter *.wav -Recurse -ErrorAction SilentlyContinue |
Select-Object -First 1 -ExpandProperty FullName

# load file and play it
$player = New-Object Media.SoundPlayer $WAVPath

try
{
  $player.PlayLooping()
  'Doing something...'

  1..100 | ForEach-Object {
    Write-Progress -Activity 'Doing Something. Hang in' -Status $_ -PercentComplete $_
    Start-Sleep -MilliSeconds (Get-Random -Minimum 300 -Maximum 1300)
  }
}

finally
{
  $player.Stop()
}

这段示例代码使用 Windows 文件夹中找到的第一个 WAV 文件,然后在脚本的执行期间播放它。您当然也可以指定其它 WAV 文件的路径。

PowerShell 技能连载 - 在后台播放声音

http://blog.vichamp.com/2015/05/28/playing-sound-in-the-background/

作者

吴波

发布于

2015-05-28

更新于

2022-07-06

许可协议

评论