Есть ли способы использовать msinfo32.exe в моей программе?

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

Единственный способ, который я нашел, - это вручную подключиться через интерфейс msinfo32, экспортировать все данные и затем проанализировать их с моей программой. Но я хочу улучшить этот процесс и сделать это автоматически, обновлять всю информацию автоматически и т. Д.

Есть ли какой-нибудь способ, которым я мог бы собрать всю информацию о ПК удаленно, используя msinfo32 изнутри моей программы?

Пожалуйста, пришлите мне ссылку на инструкции с примерами кода или объясните, почему я не могу сделать это или как я мог.

Извините за мой английский, спасибо за ваше внимание.

UPD: возможно, я могу запустить msinfo32.exe изнутри, но я скорее использую библиотеку, чем запускаю внешнюю программу в cmd.

3 ответа

Решение

Ты не можешь Вы должны использовать функции WINAPI, потому что msinfo32 не предоставляет интерфейс вывода консоли, что может быть лучшим решением.

Связанный: Как получить информацию об оборудовании, такую ​​как имя ЦП, общий объем ОЗУ и т. Д. С VB6?

Вы также можете использовать ключи реестра для проверки любых настроек системы, вся документация находится в сети. Однако получение системной информации с использованием реестра ненадежно.

Msinfo32 документация

Зависит от того, что именно нужно собирать. У вас есть некоторые функции и классы WinApi, которые могут дать вам системную информацию. GetSystemInfo () или классы аппаратного обеспечения компьютерной системы Но я думаю, что неплохо использовать msinfo32.exe напрямую, если он работает.

Я не знаю, существовала ли уже в 2015 году опция «/nfo», позволяющая экспортировать все результаты в файл. Так что просто выполните:

msinfo32 /nfo "c:\delme\msinfo32.nfo"

а затем, через XML, прочитать желаемые результаты.

Другие вопросы по тегам