积极答复者
关于播发软件时,已安装该软件的client不在运行此播发应该如何设置?

问题
答案
-
两个方法:
1.你可以写个脚本,先判断当前client上是否已经安装了QQ (例如查询WMI class root\cimv2\Win32Reg_AddRemovePrograms中受否有对应DisplayName的instance), 如果没有再运行QQ的安装命令。
然后把这个脚本和QQ的安装程序一起播发出去,让client运行这个脚本。
2.如果你使用的是ConfigMgr 2007, 你可以用Task Sequence 来实现:
1.创建QQ的安装包
2.创建一个空的Task Sequence,然后添加step“Install Software”,并选中第一步创建的软件包
3.选中这个step的选项页, 加一个if- none条件
4.在if-none条件下加一个WMI Query 条件 namespace: "root\cimv2"; WQL Query: "select * from Win32Reg_AddRemovePrograms where DisplayName like "%[QQ 的displayname或关键字]%"
5.最后把这个task sequence 播发出去
全部回复
-
SCCM 的 advertisement 中有设置,rerunAlways 那么在下一个schedule 它就会运行。 software update的 advertisement 的这个属性是缺省的,对于software 的 deployment,这个属性一般是 rerunOnFailure,所以只要第一次运行正常,下一次就会发现已经安装过,就不再安装了,在 execmgr.log 中可以看见系统的这些动作。
在SMS 2003 中,这个属性是不可见的,而且是不可写的,只能通过脚本绕过 installation history 记录来rerun program,SCCM 中这个属性可配置,简单多了。
-
两个方法:
1.你可以写个脚本,先判断当前client上是否已经安装了QQ (例如查询WMI class root\cimv2\Win32Reg_AddRemovePrograms中受否有对应DisplayName的instance), 如果没有再运行QQ的安装命令。
然后把这个脚本和QQ的安装程序一起播发出去,让client运行这个脚本。
2.如果你使用的是ConfigMgr 2007, 你可以用Task Sequence 来实现:
1.创建QQ的安装包
2.创建一个空的Task Sequence,然后添加step“Install Software”,并选中第一步创建的软件包
3.选中这个step的选项页, 加一个if- none条件
4.在if-none条件下加一个WMI Query 条件 namespace: "root\cimv2"; WQL Query: "select * from Win32Reg_AddRemovePrograms where DisplayName like "%[QQ 的displayname或关键字]%"
5.最后把这个task sequence 播发出去