作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在尝试编写一个高效 Windows 8.1 PowerShell 4.0 脚本,它将捕获/触发两种类型的事件。我希望能够捕获这些事件/触发器,以便我可以执行一些操作,例如运行脚本或启动/停止服务或其他操作。
我想捕捉/触发的事件是:
高效是指脚本不应该有一个无限循环来定期检查状态。我假设我应该能够编写一些能够在 Windows 生成事件时捕获事件的东西?
到目前为止,我了解到我可以使用 Register-WmiEvent
用于订阅 WMI 事件的 PowerShell cmdlet。
-query
还是-class
更好?我看到的唯一区别是,使用 -query
时显然很容易过滤事件(例如 Register-WmiEvent -query "Select * From Win32_PowerManagementEvent where EventType=10"
).稍后我会担心如何捕获我需要的特定事件。现在我正试图弄清楚如何捕获/触发一般事件。
最佳答案
对于第一个(电源线插入/拔出),查看Win32_PowerManagementEvent class ;你可以使用:
Register-WmiEvent -Query "select * from Win32_PowerManagementEvent" -MessageData "Event Power by JPB" -SourceIdentifier "EVTPOW1"
Wait-Event -SourceIdentifier "EVTPOW1"
或者
Register-WmiEvent -Query "select * from Win32_PowerManagementEvent" -SourceIdentifier "EVTPOW2" -Action {Write-Host "blurp"; [console]::Beep(500,500)}
在第二种情况下,您将需要的代码块放入脚本中。
关于windows - 使用 Register-WmiEvent 使用 PowerShhell 4.0 捕获 Windows 8.1 系统事件/触发器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22201856/
我正在尝试编写一个高效 Windows 8.1 PowerShell 4.0 脚本,它将捕获/触发两种类型的事件。我希望能够捕获这些事件/触发器,以便我可以执行一些操作,例如运行脚本或启动/停止服务或
我是一名优秀的程序员,十分优秀!