AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 512368
Accepted
MDMoore313
MDMoore313
Asked: 2013-06-01 10:23:56 +0800 CST2013-06-01 10:23:56 +0800 CST 2013-06-01 10:23:56 +0800 CST

仅在用户注销时通过 SCCM 部署更新

  • 772

在用于包部署的 SCCM 中,有一个选项可以强制分配和在注销时安排,还有仅在没有用户登录时部署包的选项。

我想以同样的方式部署软件更新。我没有看到这些设置,所以我假设必须使用一些hack解决方法,我想知道是否有人已经这样做过,正在这样做,或者知道我可以为此做些什么发生。我非常精通 powershell、sccm 和 c#,所以这些方面的任何东西都会很棒。我正在使用 SCCM 2012 SP1 作为参考。

windows-update
  • 1 1 个回答
  • 4807 Views

1 个回答

  • Voted
  1. Best Answer
    MDMoore313
    2013-07-10T05:25:28+08:002013-07-10T05:25:28+08:00

    在深入了解 SCCM 的 SDK 文档后,我最终所做的是使更新可用但不是强制性的。这会在 root/ccm/clientsdk 命名空间中填充一个名为 CCM_SoftwareUpdate 的 WMI 类,请参见此处。一个简单的查询,例如

    "SELECT * FROM CCM_SOFTWAREUPDATE WHERE COMPLIANCESTATE=0 AND EVALUATIONSTATE < 2"
    

    将为您提供尚未安装的可用更新。安装更新后,它们最终会从此命名空间中删除,但这需要一些时间。如果您出于某种原因必须停止并重新安装更新,这有助于过滤掉部分安装的更新。msdn 页面有更多关于不同合规状态和评估状态的信息。然后将该更新数组传递给同一命名空间中的 CCM_SoftwareUpdatesManager 类的 InstallUpdates 方法,您可以单独监视更新的进度(这就是为什么我选择将我的更新一个一个地传递给该方法,而不是全部传递给该方法一次。从我所看到的情况来看,一次全部传递它们除了将它们排队并一个一个地安装它们之外并没有真正做太多事情)。

    我在 C# 中创建了一个快速而肮脏的 gui(您可以在此处查看),我在组策略中将其设置为注销脚本,因此当它运行时,用户无法退出它,也无法按按钮关闭窗口任何一个。它尽可能接近真实的东西(我们可以控制登录背景,所以我让我的应用程序的背景看起来相同以保持一致性)。

    可悲的是,我们可能不会在我们环境中的众多笔记本电脑中采用该解决方案 b/c。没有人愿意关闭他们的笔记本电脑并将其带回家一天,只需要等待一段不确定的时间来安装更新,这在那时似乎是永远的。

    • 1

相关问题

  • Sonicwall 和 Windows 更新

  • 仅在特定工作日(和时间)安排 Windows 更新?

  • 如何诊断无法在 Windows Server 2003 上安装更新的原因?

  • 如何防止重要的 Windows 更新后重新启动机器?

  • 如果 .NET Framework 未安装,我该怎么办?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve