Xml 任务计划程序事件触发器(当它包含文本时)

Xml 任务计划程序事件触发器(当它包含文本时),xml,events,scheduled-tasks,Xml,Events,Scheduled Tasks,我正在尝试创建一个任务调度程序事件,当我们的应用程序遇到异常时触发该事件。但是,我只希望它查找特定的文本字符串。那么,有没有一种方法可以设计一个XML事件过滤器,它将使用通配符或contains查找部分文本?我试过这个,但不起作用: <QueryList> <Query Id="0" Path="Application"> <Select Path="Application"> *[EventData[Data a

我正在尝试创建一个任务调度程序事件,当我们的应用程序遇到异常时触发该事件。但是,我只希望它查找特定的文本字符串。那么,有没有一种方法可以设计一个XML事件过滤器,它将使用通配符或contains查找部分文本?我试过这个,但不起作用:

<QueryList>
  <Query Id="0" Path="Application">
    <Select Path="Application">
                 *[EventData[Data and (Data='*non-base 64 character*')]]
               </Select>
  </Query>
</QueryList>

*[EventData[Data and(Data='*非基64字符*)]]

不幸的是,根据统计,这似乎是不可能的。我花了一个小时寻找一种方法,尝试了不同的方法,但什么都没用,所以尽管我在这里发布的问题看起来没有实际的解决方案,因为这个问题比我在搜索中遇到的问题要早得多(我在搜索中开始使用“xpath”时发现了这个问题),因此,希望它能为其他人节省一些时间。

这并不完全是您想要的,但我有一个类似的要求,我可以通过过滤文本后面的实际XML来解决它。当您查看details选项卡时,您可能会看到文本后面的“原始”数据(在XML视图中),您可以使用它来代替contains过滤器

我想筛选包含以下文本的事件: “卷R:(\Device\HarddiskVolume42)运行正常。无需执行任何操作。” 所以我在寻找像“R卷”和“健康”这样的东西。 但是当仔细查看XML视图时,我发现驱动器名实际上存储在自己的数据中。所以我的最后一个过滤器是:

    <QueryList>
      <Query Id="0" Path="System">
        <Select Path="System">
        *[System[Provider[@Name='Microsoft-Windows-Ntfs']]]
        and
        *[System[(EventID='98')]]
        and
        *[EventData[Data[@Name='DriveName'] and (Data='R:')]]
        and
        *[EventData[Data[@Name='CorruptionActionState'] and (Data='0')]]
        </Select>
      </Query>
    </QueryList>

*[系统[提供程序[@Name='Microsoft-Windows-Ntfs']]
和
*[系统[(EventID='98')]]
和
*[EventData[Data[@Name='DriveName']和(Data='R:')]]
和
*[EventData[Data[@Name='CorruptionActionState']和(Data='0')]]
要测试查询,您始终可以在事件查看器中创建自定义视图