HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

Processzor, alaplap hőmérsékletének lekérdezése programból


Példaprogram letöltése

7738 bájt

Mellékelt példában egy olyan osztályt készítünk, mely képes arra, hogy meghatározza a processzor, vagy az alaplap aktuális hőmérsékletét. Ezeket az értékeket egyszerűen egy-egy függvényhíváson keresztül kérdezhetjük le.

A példa használatához két feltétel szükséges: az egyik, hogy az adott gépben ASUS alaplap legyen, a másik, hogy az alaplaphoz mellékelt CD lemezen található PC Probe nevű alkalmazás fel legyen telepítve a számítógépre. E programmal együtt kerül a gépre az Asus.dll állomány is, melynek függvényeit meg fogjuk hívni saját alkalmazásunkból és ily módon megtudhatjuk a szükséges hőmérséklet adatokat.
A PC Probe nevű alkalmazás alapértelmezésben a C:\Program Files\ASUS\Probe mappába kerül. Amikor programunk fut, akkor az e mappában lévő DLL-eket el kell hogy érje. Ez alapértelmezett esetben nem sikerül. Ennek megoldására meg kell adnunk az elérési útvonalak között e mappát is. Ehhez kattintsunk jobb gombbal az Asztalon lévő Sajátgépen, majd a Tulajdonságok menüpont választásával megjelenő ablakon a Speciális lapon lévő Környezeti változók nevű gombra kattintsunk.


Az ekkor megjelenő ablak alsó részén lévő listából keressük elő a Path nevű elemet, majd kattintsunk a Szerkesztés gombra.


Ekkor újabb ablak jelenik meg. Itt a Változó értékénél adjuk meg a C:\Program Files\ASUS\Probe mappát is a többi után egy pontosvesszővel elválasztva.
Zárjuk be az ablakokat OK gombbal, majd indítsuk újra a gépet. Ezek után a szükséges DLL-ek már bármely program számára bárhonnan hozzáférhetők lesznek.


A példaprogram
A megvalósítás ezek után már egyszerű: létrehozunk egy Asus nevű osztályt, melyben két függvényt deklarálunk külsőként. A GetCPUTemperature a processzor hőmérsékletét adja meg, míg a GetMBTemperature az alaplapét.
  public class Asus
  {
    [DllImport("asus.dll")]
    public static extern Int32 GetCPUTemperature();
    [DllImport("asus.dll")]
    public static extern Int32 GetMBTemperature();
  }
A függvények felhasználása szintén egyszerű, mivel paramétert sem várnak. Visszatérési értékük pedig az adott hőmérsékleti érték Celsius fokban mérve.
    private void button1_Click(object sender, System.EventArgs e)
    {
      label1.Text = Asus.GetCPUTemperature().ToString();
      label2.Text = Asus.GetMBTemperature().ToString();
    }

Könyv
Ez a cikk megtalálható ebben a könyvben: C# Software Offline 2002 évkönyv 542. oldal

Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!

Copyright © 1999-2012 Animare Software Kft. Minden jog fenntartva!
| Készült: Animare Stúdió | Adatvédelem | Kapcsolat |