Учебное пособие по базовым службам WinApi? - PullRequest
0 голосов
/ 06 сентября 2010

Мне нужно создать приложение, которое собирает основные данные о системе, такие как версия ОС, тип процессора и памяти, данные об установленных программах ... Приложение будет написано на языке c и будет работать на Win Server 2000 и 2003. Итак, во-первыхна мой взгляд был WinApi, но я не могу найти учебники для этих вещей, каждый учебник, который я нашел, о UserInterfaces, и мне это не нужно.

Так что любая помощь будет оценена.

РЕДАКТИРОВАТЬ: Ниже приведены ответы на несколько вопросов, и я буду использовать WMI с WinApi, но все же я не знаю, как получить подробные свойства из любого .exeпрограмма на windows ??

Ответы [ 4 ]

2 голосов
/ 06 сентября 2010

WMI скорее всего то, что вам нужно для некоторых вещей. Не забавный API. Инструмент, на который ссылается Ганс, будет полезен - даже если вам придется перенести сгенерированный код C # обратно на C.

Вам могут помочь следующие Win32 API:

Версия ОС: GetVersionEx и OSVERSIONINFOEX

Информация о процессоре: cpuid (либо напишите его в сборке, либо вызовите встроенный компилятор)

Альтернативная информация о процессоре: просто посмотрите на раздел реестра в HKLM \ Hardware \ DESCRIPTION \ System \ CentralProcessor (1 подраздел для каждого логического процессора, каждый ключ представляет собой кэш того, что возвращает процессор + также указана скорость процессора). 1015 *

Память: GlobalMemoryStatusEx

1 голос
/ 06 сентября 2010

Это не распространяется на Winapi, вам нужен WMI (инструментарий управления Windows).Чтобы приступить к выполнению запросов, которые вы можете выполнять, поэкспериментируйте с инструментом WMI Code Creator Он может автоматически генерировать код, который вам нужен.Не в Си вы найдете этот довольно неловкий язык для WMI.

0 голосов
/ 07 сентября 2010

Для получения информации о процессоре вызовите GetLogicalProcessorInformation .

Имейте в виду, что это поддерживается не на всех машинах.Так что лучше вызывать DLL динамически.В противном случае ваша программа не будет работать на таких машинах.Этот пример показывает, как это сделать

0 голосов
/ 06 сентября 2010

Вы, вероятно, также хотите узнать о книге Windows Internals , от тех же самых людей, которые делают широкий ассортимент классных утилит для того, чтобы совать под капот,

...