无需注销即可更新组策略安装的软件

无需注销即可更新组策略安装的软件

我们的 IT 支持部门发布了我通过组策略编写的内部软件产品。

是否可以强制更新特定的组策略软件安装,而无需要求用户注销并重新登录他们的计算机?

答案1

除非用户重新启动计算机(在用户登录之前,GPO 中的计算机对象会被应用),否则软件无法安装/升级。也许 Vista 可以做到这一点,我不确定 - 但对于 XP,您确实必须重新启动。

答案2

在命令 shell 中你可以运行

gpupdate /force

这将(正如命令所暗示的那样)强制更新组策略。它还可以定制为使用以下开关更新用户或计算机策略

/目标:计算机

或者

/目标:用户

答案3

对于Win 2003:

gpupdate /force /target:computer

对于 Win 2000:

secedit /refreshpolicy machine_policy /enforce

不确定 XP,但你可以尝试两者

答案4

也许为用户创建一个计划任务,该任务运行 vbscript 或其他程序来更新应用程序。该脚本必须验证可执行文件的版本,然后替换或运行更新任务。

    On Error Resume Next
DIM fso    
Dim version
Set fso = CreateObject("Scripting.FileSystemObject")
Set WshShell = WScript.CreateObject("WScript.Shell") 
x86=wshShell.ExpandEnvironmentStrings("%PROGRAMFILES(x86)%")&"\Cisco Systems\Cisco Jabber\CiscoJabber.exe"
x64=wshShell.ExpandEnvironmentStrings("%PROGRAMFILES%")&"\Cisco Systems\Cisco Jabber\CiscoJabber.exe"
If (fso.FileExists(x86) or fso.FileExists(x64)) Then
  version= CreateObject("Scripting.FileSystemObject").GetFileVersion(x86)
  if (strcomp(version,"",1)=0) then
    version= CreateObject("Scripting.FileSystemObject").GetFileVersion(x64)
    'Wscript.echo "x64"
  end if
  'Wscript.Echo version & "  en x86"
  if (strcomp(version,"11.5.1.29337",1)=0) then
    'Wscript.Echo "Tiene la ultima version"
  else

    'Wscript.Echo "Updating"
    WshShell.Run "msiexec.exe /I ""\\server\sharedfolder\CiscoJabberSetup.msi"" /quiet"

  end if
Else
  'WScript.Echo("Install as new app")
  'WshShell.Run  "msiexec.exe /I ""\\server\sharefolder\CiscoJabberSetup.msi"" /quiet"

End If
WScript.Quit()

相关内容