问题描述
我正在使用 {
"servers": [
{
"url": "http://my.api.server.com/","description": "API server"
}
],"components": {
"securitySchemes": {
"OAuth2": {
"type": "oauth2","flows": {
"authorizationCode": {
"scopes": {
"write": "modify objects in your account","read": "read objects in your account"
},"authorizationUrl": "https://example.com/oauth/authorize","tokenUrl": "https://example.com/oauth/token"
}
}
}
}
},"security": [
{
"OAuth2": [
"write","read"
]
}
]
}
调用 vlc 来播放音频文件。我想捕获这个 vlc 进程的键盘输入。按下的键不应该传递给 vlc,而是传递给我的调用程序,这样我就可以使用 start-process
或类似的东西进行检查。怎么做?
$host.UI.RawUI.KeyAvailable
解决方法
我在循环中调用此函数 PlaySong:
function LoopSong {
while ($true) {
PlaySong $d[$Nr] $CurrentSpeed
if ($host.UI.RawUI.KeyAvailable) {
$key = $host.UI.RawUI.ReadKey()
break
}
}
# ...
}
vlc 选项 -I dummy
禁用 GUI,播放时的所有键盘输入都将被缓冲,并在返回后可用于 ReadKey()。