Код для проверки, установлен ли XP Service Pack 3 (и .net 3.5) - PullRequest
2 голосов
/ 04 марта 2009

Я хочу написать программу (на vb.net), которая проверяет конфигурацию клиентов, чтобы убедиться, что они ...

  • Запуск XP с пакетом обновления 3
  • Запуск .Net 3.0 или выше.
  • Дайте им предупреждение, если они не работают .Net 3.5 или выше.

или

  • Запуск Vista с пакетом обновления 1.

Как бы я это сделал? Существует вопрос о переполнении стека, спрашивающий, как определить, какая версия .NET установлена, но как проверить, какой установлен пакет обновления O / S & O / S?

Как определить, какие версии .NET Framework и пакеты обновлений установлены?

Ответы [ 2 ]

3 голосов
/ 04 марта 2009

Я точно не знаю номер версии Windows XP SP 3 (но вам должно быть легко ее найти), но вот как можно получить строку версии.

<code>
Console.WriteLine(Environment.Version); // CLR version
Console.WriteLine(Environment.OSVersion.VersionString); // OS version string
Console.WriteLine(Environment.OSVersion.ServicePack); // OS SP string</p>

<p>Version requiredVersion = new Version(5, 1, 2600, 0); // Should be XP Prof. with Service Pack 2 (any revision)
if (Environment.OSVersion.Version.Major >= requiredVersion.Major
  && Environment.OSVersion.Version.Minor >= requiredVersion.Minor
  && Environment.OSVersion.Version.Build >= requiredVersion.Build)
{
    // You are running at least Windows XP Prof. with Service Pack 2 or above!
}

Определить, установлен ли .NET Framework 3.5, будет непросто, поскольку версия 3.5 является лишь дополнением на основе 2.0. Но вы можете проверить, существует ли папка "C: \ WINDOWS \ Microsoft.NET \ Framework \ v3.5".

2 голосов
/ 04 марта 2009
...