0

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

... 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,我可以将其转换为 [version] 但在 SCCM 中,是否有可能进行这种比较?

4

3 回答 3

1

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

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

最好的问候,雷

于 2019-08-14T09:40:11.520 回答
0

最终使用SMS_G_System_ADD_REMOVE_PROGRAMS.Version < "75.0.3770"

于 2019-08-14T12:17:25.483 回答
0

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

SMS_G_System_ADD_REMOVE_PROGRAMS.Version like "75.0.%" and
SMS_G_System_ADD_REMOVE_PROGRAMS.Version < "75.0.3770
于 2021-03-31T08:28:31.627 回答