VisualBasic Auslesen von Temperaturen

dapcfreek

Lieutenant
Registriert
Okt. 2008
Beiträge
813
Hallo,

ich will mich die nächten Woche mit einem kleinen Projekt auseinandersetzen: Will mir eine kleine Lüftersteuerung mit einen Microcontroller bauen, der dann über USB die Temperaturen von einem PC-Programm bekommt. Von der Hardware und der Programmiersteite des MC habe ich kein Problem.

Jetzt geht es um das Problem, wie ich die Temperaturen von meinem System mit einem Programm, dass ich in .net schreibe auslesen kann. Als erstes wollte ich es über MBM machne (gibt es eine DLL), dies unterstützt leider die neuen Boards nicht mehr. Nächster Gedanke war Cor Temp. Funzt wirklich super, aber leider bloß die CPU-Temperatur.
Gibt es, bzw. weiß einer von euch eine Möglichkeit, wie man auch die Festplatte, Chipsätze, GPU die Temperatur auslesen kann?

Viele Grüße
dapcfreek
 
Hast du es schon mit HWMonitor probiert?
 
JO, schon angeschaut, aber HWMonitor kostet was, oder habe ich da was falsch verstanden?
 
Soweit ich weiß kostet nur das SDK was.
 
OK, jetzt binn ich ein bisschen überfordert.
Währe super net, wenn du mir einen genauen Link schicken könntest, wo das auf deren Homepage drauf steht.
(Bin noch nicht ganz so fit in vb . net)
 
Oh...seh grad. Da gibts auch ne Pro-Version...das SDK gibts hier, ist aber ein bisschen teuer ;-). Kannste also abschreiben...Hast du dir schon Speedfan angesehen? Veilleicht kannste sowas mit dem bauen?
 
OK, dann habe ich mich mit dem SDK doch nciht getäuscht.
Werde mir mal gleich Speedfan anschauen.
Ergänzung ()

Speedfan schaut vielversprechend aus.
Werde es heute abend oder Morgen früh mal Probieren, und dann gleich berichten.
Danke schon mal.
 
Der benutzt die Ring-Library.
Die verpflichtet dich aber btw bei Veröffentlichtung den Quellcode mitzuveröffentlichen.
 
Der Open Hardware Monitor kann die von dir gewünschten Dinge auslesen und ist Open Source. Du kannst dir also den C# Sourc Code anschauen oder runterladen, und zwar hier.

Der Open Hardware Monitor Code gibt es unter der Mozilla License. Vereinfacht gesagt kannst du also den Code in deinem Projekt verwenden, so lange du alle verwendeten Open Hardware Monitor Source Files (oder modifizierte Versionen davon) auch wieder veröffentlichst, solltest du dein Projekt veröffentlichen. Dein restliches Projekt kann dabei auch closed source sein.

Die WinRing0 gibt es unter BSD License. Vereinfacht gesagt darfst du damit machen was du willst, so lange du die originale BSD License Info den Files beipackst und lässt wo sie im Source bereits ist. Du musst also deinen Quellcode nicht veröffentlichen wenn du die WinRing0 Library nutzt.

Wenn du nichts veröffentlichen willst, dann brauchst du dir keine weiteren Gedanken machen, sondern kannst die WinRing0 und Open Hardware Monitor Codes einfach so verwenden. Und natürlich bin ich kein Anwalt, die Angaben oben sind natürlich ohne Gewähr (die genauen und sicher korrekten Details findest du in den License Files).

Falls du wirklich in VB coden willst, statt was Richtiges zu nehmen *schaut zu C#*, ist es wohl das einfachste den Code aus dem OpenHardwareMonitor.Hardware Namespace zu nehmen und in ein Library Assembly zu packen. Die entsprechende DLL kannst du dann direkt in deinem VB Projekt verwenden. Eine offizielle .NET Library Version des Open Hardware Monitor ist auch für die Zukunft geplant, aber noch nicht fertig.

Oder du baust dir eine Schnittelle zum exportieren der Daten in den Open Hardware Monitor (soll es im offiziellen Open Hardware Monitor auch mal geben, siehe hier: http://code.google.com/p/open-hardware-monitor/issues/detail?id=62) und greifst dann über diese auf die Daten zu.

Wenn du dich auch mit C# anfreunden kannst, dann ist die einfachste Lösung es direkt in die Open Hardware Monitor Code Base reinzubauen.
 
Zuletzt bearbeitet:
Vielen dank an euch.
werde die Tage das Problem dann mal lösen.
Ergänzung ()

Weil ich gerade gesehen ahbe, dass mmoeller geschriben hat, dass VB nicht wirklcih gut ist, und ich lieber in C# coden sollte:
Ist das nicht das gleiche, bloß die Cods anders?
 
Ja, es ist (fast - es gibt einige Feinheiten) das gleiche. Mach dir keinen Kopf du kannst ruhig weiter VB nutzen.
 
Ja mein Kommentar zu VB musst du nicht so ernst nehmen. Ich habe einfach selber von QuickBasic, VBA und einigen anderen Basic Dialekten noch sehr schlecht Erinnerungen, und gewisse Dinge gefallen mir einfach nicht (Gross-/Kleinschreibung wird ignoriert, default Typesystem ist zu tolerant, ...). Aber VB .NET ist mit Abstand die vernünftigste Basic Variante, und rein von der Funktionalität her ziemlich identisch mit C#.
 
Zurück
Oben