1

我正在开发一个项目,需要使用我的 C# 代码自动禁用 Windows 自动更新。我不太确定从哪里开始。我已经阅读了有关可能使用 Windows 更新代理 API 的信息,但不确定。任何建议将不胜感激。提前致谢。

4

2 回答 2

4

有一个 Windows 服务负责执行更新,您可以使用以下代码停止此服务:

ServiceController sc = new ServiceController("wuauserv");
try
{
    if (sc != null && sc.Status == ServiceControllerStatus.Running)
    {
        sc.Stop();
    }
    sc.WaitForStatus(ServiceControllerStatus.Stopped);
    sc.Close();
}
catch (Exception ex)
{                
    Console.WriteLine(ex.Message);
}

你会需要:

  1. 添加对项目的引用,在项目名称中选择“添加引用”,然后添加System.ServiceProcess
  2. 包括using System.ServiceProcess;在你的课堂上
  3. 以管理员身份运行您的应用程序或 Visual Studio
于 2013-07-22T17:45:18.180 回答
2

您可以通过更改注册表来实现这一点。看看这个technet页面(应该适用于Win XP以及其他一些): http ://technet.microsoft.com/en-us/library/dd939844(v=ws.10).aspx (密钥:NoAutoUpdate )

有一些类可以帮助您在 C# 中访问注册表:http: //msdn.microsoft.com/en-us/library/microsoft.win32.registry (v=vs.90).aspx

(来源:谷歌)

于 2013-07-22T17:17:51.660 回答