Biblioteka do monitorowania systemu (CPU, GPU, Pamięć, Dyski, etc)

0

Nie za bardzo wiedziałem gdzie dać taki wątek... ale, że piszę w Delphi, to będzie tutaj :)
Ale o co chodzi... Otóż, chciałbym móc skorzystać z jakiego gotowego rozwiązania, które umożliwi mi pobranie danych o sprzęcie i sensorach (np. pobranie temperatury, obciążenia CPU, dysków, GPU etc..).
Czy ktoś z Was zna może (czy w ogóle istnieje takie darmowe rozwiązanie), które umożliwi mi pobranie i wyświetlenie danych z zewnętrznej biblioteki dll?
Wiem, że istnieje taki projekt jak Open Hardware Monitor (tylko nie widzę tam możliwości pobrania danych bez konieczności używania ich aplikacji).
Wiem, że można kombinować z WMI - ale nie o to chodzi. Chodzi o gotowe i sprawne rozwiązanie, które obsługuje najpopularniejsze chipsety, i CPU/GPU. Takie, które udostępnia te dane dla zewnętrznej aplikacji (mojej).

Wiem, że istnieje płatny MiTeC System Information... ale mnie chodzi o darmowe rozwiązanie...
Proszę o porady w tej kwestii... Jeśli piszę głupoty to proszę mnie naprostować :P
Dzięki,
-Pawel

1

Gdzieś widziałem projekt w całości dla delphi jesli znajdę wyśle link. Możesz korzystać i bez biblioteki wstawiając kody które wszystko wyciągną.
https://stackoverflow.com/questions/1539604/how-can-i-write-a-delphi-program-to-control-the-cpu-fan-speed-and-monitor-the-te

0

@Mariusz Bruniewski: Dziękuję. To rozwiązanie jednak oparte jest na WMI. O ile z WMI można wyciągnąć mnóstwo informacji, nie wszyscy dodają je do tej usługi (może być też wyłączona przez użytkownika). Najlepszym rozwiązaniem jest bezpośredni dostęp do czujników, co oferuje cytowany przeze mnie Open Hardware Monitor...
Dla przykładu, kod który podaje Rodrigo (RRUZ), operujący na WMI u mnie na komputerze nie zwraca wyników... (a taki Open Hardware Monitor, czy HWiNFO podaje poprawnie dane z sensorów).

2

a próbowałeś skorzystać z tsmbios?

2

Ja kiedyś korzystałem z https://www.mitec.cz/msics.html. Z tego co wiem pliki pas znalazłem na wielu innych stronach. Tak jak wspomniałeś ciekawe rzeczy te programy potrafiły wydobyć.Przechwytywanie.JPG

{*******************************************************}
{							}
{	MiTeC System Information Component		}
{		CPU Detection Part			}
{	    version 8.6.5 for Delphi 5,6,7        	}
{							}
{	Copyright Š 1997,2004 Michal Mutl		}
{							}
{*******************************************************}

{$INCLUDE MITEC_DEF.INC}

unit MSI_CPU;

Może tutaj coś znajdziesz. https://torry.net/pages.php?id=240
https://torry.net/pages.php?id=235
Pozdrawiam serdecznie :-)
Przechwytywanie.JPG

https://www.delphibasics.info/home/delphibasicssnippets/hardwareinformationlibrary

0

Konkretnie chodzi o coś takiego. O dane z sensorów:
sensory.png

Niestety, ani zapytanie WMI ani smbios nie dają interesujących wyników...

1

Myślę , albo mylę się tutaj bardziej chodzi o badanie płyty głównej. Taki wygląd to treeview plus obrazki. Myślę że nie biblioteka a coś z pozycji sterowników. One mają bezpośredni dostęp do sprzętu i jego reakcji zwrotnej + Bios.

Za chwile podeślę Tobie kod dla Delphi, aby wymusić uprawnienia administratora. Bez klikania na aplikację. Przycisk lewy lub prawy. Od tego musisz zacząć. Aplikacja To uczyni.. Bo bez tego ani rusz ani WMI ani BIOS!!!! Ja dużo straciłem czasu na odczytach. Bo nie byłem adminem. Mało tego wkurzyłem się jak to, jak to może być, że w kodzie zero jeden są takie pomyłki. Otoz jadro systemu z biosem mie idzie razem.

0

Mam pytanie czy udało się komuś pobranie wartości obciążenia CPU takiej jak w zakładce wydajność menadżera zadań Windows 10;

Bo ja próbowałem już na wszystkie sposoby jakie znalazłem:

W kodzie c#

  • poprzez PerformanceCounter
  • pobierając różne dane WMI (np. Win32_PerfFormattedData_PerfOS_Processor)

Korzystając z programów

  • korzystając openhardwaremonitor-a
  • Proces Explorera 16.31 (te wydawały się najbliżej)
0

Kiedyś użyłem tego kodu i coś tam wyświetlał https://stackoverflow.com/a/33575515/7460148

0

@Pepe o jakie konkretnie Delphi Tobie chodzi. Bo w Delphi 7 mogę Tobie taką bibliotekę *.dll napisać.
*

library CGPURD;

uses
  SysUtils,
  Classes;

{$R *.res}

begin
end.

CGPURD.dll o takiej nazwie :-)

0
Mariusz Bruniewski napisał(a):

@Pepe o jakie konkretnie Delphi Tobie chodzi. Bo w Delphi 7 mogę Tobie taką bibliotekę *.dll napisać.

O co ci chodzi? Piszesz strasznie chaotycznie, udzielasz się w wielu tematach (co się chwali), ale często nic z tego nie wynika... Mylę się?

0

Np . :-)

CPU_PROCESSOR_COUNT := ...
CPU_PHYSICAL_CORES := ...
CPU_LOGICAL_CORES :=...

uses
NumCPULib;

var
lcc, pcc: Int32;
begin
// count logical cpus (aka logical processors)
lcc := TNumCPULib.GetLogicalCPUCount();
// count physical cpus (aka cores)
pcc := TNumCPULib.GetPhysicalCPUCount();
end;
0

@Mariusz Bruniewski: Dziękuję za próby pomocy. W przyszłości NIE PISZ proszę więcej pod moimi postami.

0

Może to spasuje https://github.com/RRUZ/tsmbios

1 użytkowników online, w tym zalogowanych: 0, gości: 1