Что нового

Computer Info - Библиотека для получения инфы о компьютере

`p r o x y

«Улыбайтесь, господа!»
Команда форума
Глобальный модератор
Сообщения
596
Репутация
156
AutoIt: 3.2.1.2 - 3.3.0.0
Версия: 00.03.08
Категория:
Название: (UDF) Computer Info
Описание: Получение информации о компьютере и его устройствах через WMI.
Код: Пример
Код:
#include "CompInfo.au3" ;If you are wanting to pull WMI data from different computers then Declare $cI_CompName as the computer name before the include.

#region -- Boot Configuration
Dim $BootConfig

_ComputerGetBootConfig($BootConfig)
If @error Then
    $error = @error
    $extended = @extended
    Switch $extended
        Case 1
            _ErrorMsg($ERR_NO_INFO)
        Case 2
            _ErrorMsg($ERR_NOT_OBJ)
    EndSwitch
EndIf

For $i = 1 To $BootConfig[0][0] Step 1
    MsgBox(0, "Test _ComputerGetBootConfig", "Name: " & $BootConfig[$i][0] & @CRLF & _
            "Boot Directory: " & $BootConfig[$i][1] & @CRLF & _
            "Configuration Path: " & $BootConfig[$i][2] & @CRLF & _
            "Last Drive: " & $BootConfig[$i][3] & @CRLF & _
            "Description: " & $BootConfig[$i][4] & @CRLF & _
            "Scratch Directory: " & $BootConfig[$i][5] & @CRLF & _
            "Setting ID: " & $BootConfig[$i][6] & @CRLF & _
            "Temp Directory: " & $BootConfig[$i][7])
Next
#endregion Boot Configuration

#region ---- Internal Functions
Func _ErrorMsg($message, $time = 0)
    MsgBox(48 + 262144, "Error!", $message, $time)
EndFunc
#endregion Internal Functions
Источник: JSThePatriot
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1 541
Репутация
326
Re: UDF Computer Info

Очень полезный UDF :smile: Всем качать!
 
V

VitAl2013

Гость
Я не понял какую такую информацию о компе он может выдать? Например может выдать проценты загруженности процессора или самый процессорожрущую программу в системе?
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8 175
Репутация
2 331
VitAl2013 [?]
может выдать проценты загруженности процессора
Может, см. _ComputerGetProcesses:

Код:
Dim $aProcessInfo
_ComputerGetProcesses($aProcessInfo)
_ArrayDisplay($aProcessInfo)


загрузка процессора это 39-тый элемент в массиве (в байтах), во второй его колонке.
 

Waik

Знающий
Сообщения
60
Репутация
16
Возможности библиотеки конечно очень замечательные.Но я не могу вызвать ни одну функцию.То как я пробую это сделать я даже писать не буду-)
Вроде CreatoR показал пример работы с функцией.Но как например записать возврощаемое значение BootDirectory из функции _ComputerGetBootConfig в переменную ?
Подскажите.
 
Автор
P

`p r o x y

«Улыбайтесь, господа!»
Команда форума
Глобальный модератор
Сообщения
596
Репутация
156
Waik
Код:
#include <CompInfo.au3>

; объявление  массива
Dim $aBootConfigInfo

; вызов функции и передача массива в который будет записан результат
_ComputerGetBootConfig($aBootConfigInfo)

; вывод сообщения с информацией о BootDirectory
; информация BootDirectory находится в массиве $aBootConfigInfo в элементе [1][1]
; это можно узнать из UDF CompInfo.au3, в функции _ComputerGetBootConfig
MsgBox(64, 'BootDirectory', $aBootConfigInfo[1][1])
 

k790

Новичок
Сообщения
239
Репутация
1
win 7 поддерживается?

У меня пишет, ошибку на 1004 строке (это exe'ник)
А в исходнике
Код:
C:\Program Files\AutoIt3\Include\CompInfo.au3 (584) : ==> The requested action with this object has failed.:
$aOSInfo[$i][43] = $objItem.QuantumLength
$aOSInfo[$i][43] = $objItem.QuantumLength^ ERROR
 

HukpoFuJl

AццkuЙ HukpoFuJl
Сообщения
97
Репутация
38
Подтверждаю, по Quantum'ам пишет ошибку, пришлось удалить 2 строки с ними из библиотеки. (Win8 CP)

UPD:

Уточняю: Функция _ComputerGetOSs(ByRef $aOSInfo) выдает ошибки "The requested action with this object has failed" на строках 584 и 585:
Код:
$aOSInfo[$i][43] = $objItem.QuantumLength
$aOSInfo[$i][44] = $objItem.QuantumType
 

михаил15

Новичок
Сообщения
8
Репутация
0
Хороший файл CompInfo.au3, много всего показывает. Спасибо автору.
Сделал файл "CompInfo в MsgBox" для более быстрого поиска нужного значения, тем кто пишет свои программы.
Примечание: у меня файл "CompInfo в MsgBox.au3" работает если рядом с ним лежит "CompInfo.au3"

Не смог заставить работать:
_ComputerGetPrintJobs
_ComputerGetThreads
_ComputerGetBattery
_ComputerGetDrives
Кто знает как заставить их работать - внесите пожалуйста исправления в файл.
 

Вложения

Верх