我设法在任务计划程序在验证网络设置更改时触发:
通过从注册表中订阅事件Microsoft-Windows-诊断-网络/操作
唯一的起源是诊断网络
现在覆盖有效,但它会触发 2 次操作
有没有办法过滤事件以便我只触发一次动作?
通过添加 ID?
我尝试添加来自事件查看器(6100 和 4000),但都不起作用
我尝试将日志可视化,但找不到合适的数字
在哪里可以找到可用的 ID 列表?
答案1
您知道,当您使用界面更改 Win10 中的静态 IP 地址时,在关闭之前,您可以勾选“验证设置”并按确定,Windows 打开另一个带有进度条的弹出窗口进行一些检查后,我设法在那里找到了这些事件,但如果有其他方法,我会很高兴。这些事件是任务调度程序的诊断网络,显然有多个
答案2
“退出时验证设置”功能会连续启动两个诊断会话。可以通过事件数据区分两个启动事件(任务类别 ID 1):数据HelperClassName
首先是NetworkSnapshot
然后是DnsHelperClass
。要仅在第一次启动时触发,请选择“事件时”触发器类型,在设置组中选择自定义,单击编辑事件过滤器,切换到 XML 选项卡,选中“手动编辑查询”,然后使用此XPath 查询:
<QueryList>
<Query Id="0" Path="Microsoft-Windows-Diagnostics-Networking/Operational">
<Select Path="Microsoft-Windows-Diagnostics-Networking/Operational">*[System[Provider[@Name='Microsoft-Windows-Diagnostics-Networking'] and Task = 1]] and *[EventData[Data[@Name='HelperClassName'] and Data='NetworkSnapshot']]</Select>
</Query>
</QueryList>