Autor |
Beitrag |
kennwort999
Hält's aus hier
Beiträge: 10
|
Verfasst: Fr 03.08.07 21:01
Jemand eine Idee oder kann helfen, möchte die CPU Temperatur auslesen!
Folgende in VB ist schon mal möglich,,,, nur die Temperatur nicht ???
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:
| pc = "." li = "Prozessorinfos:" & vbcr Set wmi = GetObject("winmgmts:\\" & pc & "\root\cimv2") Set col = wmi.ExecQuery("Select * from Win32_Processor",,48) For Each obj in col li = li & "Rechnername: " & obj.SystemName & vbcr li = li & "Modell: " & obj.Name & vbcr li = li & "ID: " & obj.ProcessorId & vbcr li = li & "Version: " & obj.Version & vbcr li = li & "Revision: " & obj.Revision & vbcr li = li & "Kennzeichnung: " & obj.SocketDesignation & vbcr li = li & "Typ: " & obj.role & vbcr li = li & "Mhz: " & obj.CurrentClockSpeed & vbcr li = li & "max. Mhz: " & obj.MaxClockSpeed & vbcr li = li & "Beschreibung: " & obj.Description & " / " & obj.Caption & vbcr li = li & "Hersteller: " & obj.Manufacturer & vbcr Next MsgBox (li) |
MEINE IDEE WAR:
Quelltext 1: 2: 3: 4: 5: 6: 7: 8:
| pc = "." li = "Prozessorinfos:" & vbcr Set wmi = GetObject("winmgmts:\\" & pc & "\root\cimv2") Set col = wmi.ExecQuery("Select * from Win32_Processor",,48) For Each obj in col li = li & "CPUTemperatur: " & obj.GetCPUTemperature & vbcr Next MsgBox (li) |
komme da einfach nicht weiter!
LG kennwort999
Moderiert von Gausi: Code-Tags hinzugefügt
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Fr 03.08.07 21:08
Bitte benutzte die Forensuche, die liefert Dir zum Thema CPU-Temperatur einige Hinweise.
Ansonsten wäre es von Vorteil, wenn Du Quelltexte mit Code-Tags kennzeichnen könntest, da diese dadurch wesentlich besser lesbar werden.
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
hathor
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Fr 03.08.07 21:15
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52:
| uses .... Activex, WbemScripting_TLB;
function GetWMIstring2 (wmiHost, wmiClass, wmiProperty : string):string; var Locator: ISWbemLocator; Services: ISWbemServices; SObject: ISWbemObject; ObjSet: ISWbemObjectSet; SProp: ISWbemProperty; Enum: IEnumVariant; Value: Cardinal; TempObj: OleVariant; SN: string; begin try Locator := CoSWbemLocator.Create; Services := Locator.ConnectServer(wmiHost, 'root\wmi', '', '', '','', 0, nil); ObjSet := Services.ExecQuery('SELECT * FROM '+wmiClass, 'WQL', wbemFlagReturnImmediately and wbemFlagForwardOnly , nil); Enum := (ObjSet._NewEnum) as IEnumVariant; while (Enum.Next(1, TempObj, Value) = S_OK) do begin SObject := IUnknown(tempObj) as ISWBemObject; SProp := SObject.Properties_.Item(wmiProperty, 0); if VarIsNull(SProp.Get_Value) then result := '' else begin SN := SProp.Get_Value; result := SN; end; end; except on exception do result := ''; end; end;
procedure TForm1.WMIdata(Sender: TObject); var tmpstr : string; cputemp : Integer; begin tmpstr := getWMIstring2('','MSAcpi_ThermalZoneTemperature','CurrentTemperature'); if tmpstr <> '' then Begin cputemp:= (StrToInt(tmpstr) - 2732) div 10; CPUTemperature1.caption := IntToStr(cputemp) + ' °C' end else CPUTemperature1.Caption := 'ERROR'; end; |
|
|
hathor
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Fr 03.08.07 21:27
Für AMD-Prozessoren der K8-Klasse - Single Core und Duo Core, incl. Source code:
Info:
www.thecoolest.zerob...Temp/howitworks.html
Einloggen, um Attachments anzusehen!
|
|
kennwort999 
Hält's aus hier
Beiträge: 10
|
Verfasst: Sa 04.08.07 20:51
Hallo hathor
Hallo einen schönen Gruss nach Berlin,
ich Danke Dir für Dein Beipiel, es gab einen kleinen Einblick! Big Thx
Leider erhalte ich immer wieder Fehlermeldung und da ich neu bin so zu sagen,
kann ich nicht machen! Gibt es irgend wie ein Projekt das ich mal laden könnte?
Hier im Forum bin ich leider seit mehreren Wochen auch nicht pfündig geworden,
alles war nur andeutungsweise für mich da Anfänger!
Kannst DU da helfen ?
LG Ken
|
|
hathor
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Sa 04.08.07 22:18
Aber gerne:
Einloggen, um Attachments anzusehen!
|
|
kennwort999 
Hält's aus hier
Beiträge: 10
|
Verfasst: Mo 06.08.07 14:59
Hallo hathor,
Big Thx erst mal.
Leider zeigt bei immer die Fehlermeldung " CPU-Temp-Error " und ...
Im Projekt Wmitemp.exe Exception der Klasse EoleException mit der Meldung " Wird nicht unterstützt "
ObjSet := Services.ExecQuery('SELECT * FROM '+wmiClass, 'WQL',
Was auch immer das heist !??
LG Ken
P.S. Mein System Borland Delphi : Borland® Delphi® für Microsoft® Windows™ Version 10.0.2288.00000 Update 2
|
|
Raffo
      
Beiträge: 300
|
Verfasst: Mo 06.08.07 15:52
Ja genau, ich hätte mich auch gerne dafür interssiert, aber bei mir kommt auch CPU-Temp Error.
|
|
hathor
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mo 06.08.07 18:10
Das ist sicher ein Problem des Betriebssystems bzw. von WMI:
WMI-Diagnoseprogramm
Beschreibung:
www.microsoft.com/ge...cs/help/wmidiag.mspx
Download:
www.microsoft.com/do...b6857a%2fWMIDiag.exe
Bitte bei Fehlermeldungen IMMER Betriebssystem angeben!
Einloggen, um Attachments anzusehen!
|
|
kennwort999 
Hält's aus hier
Beiträge: 10
|
Verfasst: Mo 06.08.07 20:27
Hallo was mache ich falsch ? Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26:
| On Error Resume Next
Const wbemFlagReturnImmediately = &h10 Const wbemFlagForwardOnly = &h20
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\WMI") Set col = objWMIService.ExecQuery("SELECT * FROM MSAcpi_ThermalZoneTemperature", "WQL", wbemFlagReturnImmediately + wbemFlagForwardOnly)
For Each obj in col li = li & "Active: " & objItem.Active strActiveTripPoint = Join(objItem.ActiveTripPoint, ",") & vbcr li = li & "ActiveTripPoint: " & strActiveTripPoint & vbcr li = li & "ActiveTripPointCount: " & objItem.ActiveTripPointCount & vbcr li = li & "CriticalTripPoint: " & objItem.CriticalTripPoint v li = li & "CurrentTemperature CPU: " & (objItem.CurrentTemperature - 2732) / 10 & " °C" & vbcr li = li & "InstanceName: " & objItem.InstanceName & vbcr li = li & "PassiveTripPoint: " & objItem.PassiveTripPoint & vbcr li = li & "Reserved: " & objItem.Reserved & vbcr li = li & "SamplingPeriod: " & objItem.SamplingPeriod & vbcr li = li & "ThermalConstant1: " & objItem.ThermalConstant1 & vbcr li = li & "ThermalConstant2: " & objItem.ThermalConstant2 & vbcr li = li & "ThermalStamp: " & objItem.ThermalStamp & vbcr next MsgBox (li) | sollte doch jetzt eine Meldung geben oder ??? Moderiert von Tino: Code-Tags hinzugefügt.
|
|
hathor
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mo 06.08.07 21:03
kennwort999 hat folgendes geschrieben: | Hallo was mache ich falsch ?
|
Funktioniert das unveränderte Originalprogramm?
MSAcpi_ThermalZoneTemperature_C.vbs
|
|
kennwort999 
Hält's aus hier
Beiträge: 10
|
Verfasst: Mo 06.08.07 21:45
Hallo, nein das funzt auch net, leider !
weis nicht warum !
LG Chris
hathor hat folgendes geschrieben: | kennwort999 hat folgendes geschrieben: | Hallo was mache ich falsch ?
|
Funktioniert das unveränderte Originalprogramm?
MSAcpi_ThermalZoneTemperature_C.vbs |
|
|
hathor
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mo 06.08.07 21:51
WMI-Diagnoseprogramm
Beschreibung:
www.microsoft.com/ge...cs/help/wmidiag.mspx
Download:
www.microsoft.com/do...b6857a%2fWMIDiag.exe
Bitte bei Fehlermeldungen IMMER Betriebssystem angeben!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
kennwort999 
Hält's aus hier
Beiträge: 10
|
Verfasst: Mo 06.08.07 22:24
Hallo beim starten von WMIDiag.exe kommt eine Systemmeldung :
Skriptmodul "VBScript" für Script "C:\WMIDiag.vbs" wurde nicht gefunden.
Mein Betriebssystem ist Win Prof Media !
***********************************************************************
|
|
hathor
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mo 06.08.07 22:31
Installation:
Windows Script 5.6 for Windows XP and Windows 2000
www.microsoft.com/do...A&displaylang=en
|
|
kennwort999 
Hält's aus hier
Beiträge: 10
|
Verfasst: Mo 06.08.07 23:59
Hallo, selbst die anderen Programme Borland Delphi etc.. alles läuft nicht mehr...
vielleicht ein VIR.. beim scripte laden geholt ... aber wo ??? Werde das System neu machen! Bis bald !!
|
|
kennwort999 
Hält's aus hier
Beiträge: 10
|
Verfasst: Di 07.08.07 19:07
Hallo alles geht wieder!
Dein Beispiel Script läuft scheinbar, nur mir wird nichts angezeigt!
kann es sein das ich einen Dienst oder Service nicht am PC Besitze ?
MSAcpi_ThermalZoneTemperature zum Beipiel !
Ich möchte es als MSG Meldung haben, bekomme das nicht hin!
LG Ken
|
|