我想创建一个PowerShell脚本,将系统卷设置为指定的级别,然后运行与脚本位于同一目录中的音频文件。我已经想出了第一部分,但我似乎无法管理第二部分。重要的是可以移动文件夹并重命名,脚本仍然可以工作。这就产生了一个问题,即我不能简单地使用Invoke-Item然后指定文件名,因为路径可能会发生变化。
编辑: 我的尝试:
$player = New-Object System.Media.SoundPlayer "$env:userprofile\SoundFile.wav"
$player.Play()
Start-Sleep -s 10
如果路径发生变化,则会出现问题。
答案 0 :(得分:1)
找到了解决方案:我使用了自动定义的变量$ PSScriptRoot,它显然是在PS 3.0中添加的。所以这条线现在是
$player = New-Object System.Media.SoundPlayer "$PSScriptRoot\SoundFile.wav"