CPU-Temperatur und Co.

Für allgemeine Fragen zur Programmierung mit PureBasic.
glubschi90
Beiträge: 274
Registriert: 04.09.2004 01:43
Wohnort: Würzburg

CPU-Temperatur und Co.

Beitrag von glubschi90 »

Sääärs! ( :mrgreen: )

Ich wollte mal fragen, wie man in PB die Prozessortemperatur und Co.( z.B. Drehzahl der Lüfter, Temperatur im Gehäuse usw) abfragen kann. :)

Danke im Vorraus (<-richtig?)!!! :D

Christian
PureBasic 4.30
Benutzeravatar
Laurin
Beiträge: 1639
Registriert: 23.09.2004 18:04
Wohnort: /dev/eth0

Beitrag von Laurin »

Das ist gar nicht so einfach. Du musst durch Inline-Assembler auf das BIOS zugreifen und dort irgendwo die Daten auslesen.

Die entsprechende Doku dazu gibts bei deinem Mainboard-Hersteller. (Falls er sie rausrückt :mrgreen: )


Greetz Laurin
Now these points of data make a beautiful line.
And we're out of beta. We're releasing on time.
glubschi90
Beiträge: 274
Registriert: 04.09.2004 01:43
Wohnort: Würzburg

Beitrag von glubschi90 »

Aber es muss doch eine universelle Variante geben, sonst würde z.B. SpeedFan ja nur auf ganz wenigen PCs laufen :roll:
PureBasic 4.30
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3873
Registriert: 13.09.2004 17:48
Kontaktdaten:

Beitrag von bobobo »

Ich hatte mal ne indirekte Temperatur-Lautstärke-Mapping-Geschichte gemacht.
Also Temperatur als Lautstärke abgebildet.
Dazu braucht man allerdings ne Soundkarte und n Schraubenzieher.
(und gute Nerven :mrgreen: )

Code: Alles auswählen

; PB4.10 
; Prozessortemperaturmapping auf den Gehörgang 
; BENUTZUNG AUF EIGENE GEFAHR 
; 
Enumeration 
#Window_0 
#Button_2 
#Text_0 
#Button_3 
#Button_4 
#Text_2 
EndEnumeration 

Procedure MCI(command.s) 
  result=mciSendString_(command,@buffer$,256,0) 
  ProcedureReturn result 
EndProcedure 

Procedure RecordIt(d) 
  MCI("open new type waveaudio alias aua") 
  MCI("set aua time format ms") 
  MCI("record aua from 0 to "+Str(d)+" wait") 
  MCI("save aua c:\aua.wav") 
  MCI("close aua") 
EndProcedure 


If OpenWindow(#Window_0, 337, 62, 600, 300, "MM - Prozessortemperatur feststellen",  #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar ) 
  If CreateGadgetList(WindowID(#Window_0)) 
    ButtonGadget(#Button_2, 490, 200, 60, 20, "Ende") 
    TextGadget(#Text_0, 20, 10, 370, 120, "") 
    ButtonGadget(#Button_3, 20, 110, 340, 60, "6. Hier drücken") 
    ButtonGadget(#Button_4, 20, 200, 340, 30, "7. Wiedergabe") 
    DisableGadget(#BUTTON_4,1) 
    TextGadget(#Text_2, 20, 250, 370, 30, "") 
    
  EndIf 
EndIf 
text.s="1. Mikrofon anschliessen."+Chr(10) 
text  +"2. Mikrofon als Aufnahmegerät auswählen."+Chr(10) 
text  +"3. Gehäuse aufschrauben und "+Chr(10) 
text  +"4. Wiedergabelautstärke auf Maximum stellen."+Chr(10) 
text  +"5. Prozessor vorsichtig mit Fingerspitze des kleinen rechten Fingers berühren."+Chr(10)+Chr(10) 
text  +"DANN" 
SetGadgetText(#Text_0,text) 

Repeat 
  Event = WaitWindowEvent() 
  If Event = #PB_Event_Gadget 
    GadgetID = EventGadget() 
    If GadgetID = #Button_2 
      End 
    ElseIf GadgetID = #Button_3 
      DisableGadget(#Text_0,1) 
      DisableGadget(#Button_3,1) 
      SetGadgetText(#Button_3,"Aufnahme läuft") 
      RecordIt(3000) 
      DisableGadget(#Button_4,0) 
      SetGadgetText(#Button_3,"6. Hier drücken") 
    ElseIf GadgetID = #Button_4 
      DisableGadget(#Button_4,0) 
      SetGadgetText(#Button_4,"Wiedergabe") 
      PlaySound_("c:\aua.wav",0,#SND_FILENAME|#SND_SYNC) 
      DisableGadget(#Button_4,1) 
      SetGadgetText(#Button_4,"7. Wiedergabe") 
      DisableGadget(#Button_3,0) 
      DisableGadget(#Text_0,0) 
      SetGadgetText(#Text_2,"Wenn das jetzt LAUT war dann ist der Prozessor recht warm.") 
    EndIf 
  EndIf 
Until Event = #PB_Event_CloseWindow 
End
Zuletzt geändert von bobobo am 13.03.2008 21:14, insgesamt 2-mal geändert.
‮pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
glubschi90
Beiträge: 274
Registriert: 04.09.2004 01:43
Wohnort: Würzburg

Beitrag von glubschi90 »

@bobobo
1.)
:lol: :lol: :lol: Krasses Avatar! :mrgreen:

2.) Hehe... ich kann ja in mein Prog schreiben, dass der User den PCV aufschrauben, ein Mikro anschließen und dann auf <Aufnahme> klicken soll... Dann mach das Prog den Rest vollautomatisch :mrgreen:

Öhm... weiß sonst irgendjemand, wie man das macht?? :)
PureBasic 4.30
FloHimself
Beiträge: 338
Registriert: 05.09.2004 18:47

Beitrag von FloHimself »

Laurin hat dir schon den richtigen Tipp gegeben!
Benutzeravatar
Falko
Admin
Beiträge: 3535
Registriert: 29.08.2004 11:27
Computerausstattung: PC: MSI-Z590-GC; 32GB-DDR4, ICore9; 2TB M2 + 2x3TB-SATA2 HDD; Intel ICore9 @ 3600MHZ (Win11 Pro. 64-Bit),
Acer Aspire E15 (Win11 Home X64). Purebasic LTS 6.11b1
HP255G8 Notebook @AMD Ryzen 5 5500U with Radeon Graphics 2.10 GHz 3.4GHz, 32GB_RAM, 3TB_SSD (Win11 Pro 64-Bit)
Kontaktdaten:

Beitrag von Falko »

Es gibt aber auch eine MBM5.dll , die man sich runterladen kann.
Es soll dazu auch ein Delphi-Source geben mit der man diese abfragen
können soll. Zwar habe ich die DLL, aber noch keinen Source gefunden.
Habe zwar was über Plugins gefunden, aber das ist es nicht
http://mbm.livewiredev.com/index3.html
http://mbm.livewiredev.com/mbmplugincode.html
MfG Falko
Bild
Win11 Pro 64-Bit, PB_6.11b1
Benutzeravatar
freedimension
Admin
Beiträge: 1987
Registriert: 08.09.2004 13:19
Wohnort: Ludwigsburg
Kontaktdaten:

Re: CPU-Temperatur und Co.

Beitrag von freedimension »

glubschi90 hat geschrieben: Danke im Vorraus (<-richtig?)!!!
Fast, wird nur mit einem r geschrieben
Also: vielen Dank im Voraus
Beginne jeden Tag als ob es Absicht wäre!
Bild
BILDblog
Antworten