Как я могу использовать WMI, чтобы узнать установленную версию Exchange с помощью C #? - PullRequest
0 голосов
/ 02 марта 2012

Я бы хотел запросить версию Exchange, установленную на сервере нашего пользователя.Я понимаю, что это можно сделать с помощью WMI, но мне трудно найти простое объяснение с помощью Google.Любой совет?

Ответы [ 2 ]

1 голос
/ 02 марта 2012

Это должно привести к началу работы:

string condition = "Vendor LIKE 'Microsoft%' AND Name = 'Exchange'";
string[] selectedProperties = new string[] { "Version" };
SelectQuery query = new SelectQuery("Win32_Product", condition, selectedProperties);

using (ManagementObjectSearcher searcher = new ManagementObjectSearcher(query))
using (ManagementObjectCollection products = searcher.Get())
    foreach (ManagementObject product in products)
    {
        string version = (string) product["Version"];

        // Do something with version...
    }

Это ищет экземпляры Win32_Product класса , где свойство Vendor начинается с "Microsoft" и Nameсвойство "Exchange", и извлекает свойство Version.У меня нет доступа к установке Exchange, чтобы узнать, какими будут эти значения.Еще лучше было бы, если бы вы могли определить, какое свойство ProductID было бы для Exchange, поэтому вы можете фильтровать только на основе этого.

Обратите внимание, что не все установленные приложения возвращаются Win32_Product (похоже,в основном приложения Microsoft и программы установки Windows).Итак, насколько я знаю, Exchange не является одним из этих приложений!

0 голосов
/ 02 марта 2012

У меня тоже такой же вопрос: Exchange (сервер) на компьютере пользователя?Кстати, здесь вы можете найти хороший пример источника с объяснениями того, как получить список установленных приложений на (любом) компьютере с Windows, используя WMI.

Идея этого заключается в использовании "SELECT* ОТ Win32_Product "запрос из" \ root \ cimv2 "для выбора списка приложений.

каждый элемент приложения (реализованный класс) имеет свой собственный« IdentifyingNumber »,« Description »,« Version »и т. Д., Которые помогаютВы найдете свой ответ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...