Отчет / инвентаризация оборудования / драйверов Windows - PullRequest
1 голос
/ 23 октября 2010

Я пытаюсь выяснить, как создать инвентаризацию оборудования / отчет по Windows 7, включая:

  • Все устройства, подключенные к системе или подключенные к ней.
  • Информация о драйвере / устройстве для каждого устройства (тип устройства, производитель, версия драйвера, дата драйвера, поставщик драйвера, файлы драйвера, идентификаторы оборудования)
    • Если драйверы имеют цифровую подпись (WHQL) / имеют действительную подпись

Я нашел эту статью. http://www.codeproject.com/KB/system/SimpleSetup.aspx это приложение на C ++ - мне нужно его преобразовать. http://www.codeproject.com/KB/cs/EverythingInWmi03.aspx - этот основан на WMI (инструментарий управления Windows)

В основном эти ссылки очень помогли, но обе не дают полного решения. я начал с подхода WMI и понял, что таким образом я не получаю всю необходимую информацию ... особенно информация isDriverDigitallySigned очень важна. Я видел статьи, в которых упоминалось, что проверить, имеет ли драйвер устройства цифровую подпись или нет, можно проверить, получив сертификат x509, например:

           X509Certificate xcert = null;
        try
        {
            var d = new DirectoryInfo(@"c:\windows\system32\drivers");
            FileInfo[] allFiles = d.GetFiles();
            foreach (FileInfo f in allFiles)
            {
                xcert = X509Certificate.CreateFromSignedFile(f.Name);
                Console.WriteLine(f.Name + "\t" + xcert.GetName() + "\t" +
                                  xcert.GetPublicKeyString());
            }
        }

, но это не помогло - ни для одного из файлов .sys сертификат не может быть «извлечен» (CreateFromSignedFile)

Я кодирую на C #.

Помощь приветствуется.

1 Ответ

0 голосов
/ 23 октября 2010

Какой класс WMI вы используете для перечисления драйверов?Win32_PnPSignedDriver имеет свойство с именем IsSigned.

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