WQL/SCCM - 正确比较版本号(小于..)



我在 SCCM WQL 查询的这一部分查找"低于版本 75.0.3770.80"时遇到问题:

... where SMS_G_System_ADD_REMOVE_PROGRAMS.Version < "75.0.3770.80"

如果我没记错的话,这是之前在其他场景(例如文件名(中看到的老问题,它将返回版本号为:

75.0.3770.142   

因为在它的逻辑中"当然".142"小于".80因为.1小于.8.它不将其视为"142 对 80",而是"1 对 8">

有什么方法可以解决这个问题吗?我在这个查询中收到了很多误报,需要过滤掉它们。如果是直接的Powershell,我可以将其转换为[版本],但是在SCCM中,是否可以进行这种比较?

如果只有版本号的最后一部分不同,我们可以使用以下版本。

... where SMS_G_System_ADD_REMOVE_PROGRAMS.Version like "75.0.3770.[1-7][0-9]"
or ... like "75.0.3770.[0-9]"

此致敬意 射线

最终使用了SMS_G_System_ADD_REMOVE_PROGRAMS.Version < "75.0.3770"

如果第一个版本 nr 达到 100,则会出错。 像这样更好

SMS_G_System_ADD_REMOVE_PROGRAMS.Version like "75.0.%" and
SMS_G_System_ADD_REMOVE_PROGRAMS.Version < "75.0.3770

最新更新