HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

Rendszeridő beállítása programból


Példaprogram letöltése

7691 bájt

Az aktuális dátumot és időt könnyen lekérdezhetjük a DateTime osztály segítségével, viszont ha ezt a dátumot és időpontot programból szeretnénk módosítani is, akkor már kissé bonyolultabb a helyzet. Erre keresünk megoldást mellékelt példánkban.

Az idő beállításához egy Windows függvényt használunk, mely SetLocalTime névre hallgat. Ennek eléréséhez készítünk egy Win32 osztályt, melyben a függvény külsőként való deklarálásán kívül a paramétereként használatos SYSTEMTIME struktúrát is létre kell hoznunk. Ha mindkettő megtörtént, akkor már egyszerű a helyzetünk: csak fel kell használnunk a függvényt.
  internal class Win32
  {
    [StructLayoutAttribute(LayoutKind.Sequential)]
    public struct SYSTEMTIME
    {
      public short year;
      public short month;
      public short dayOfWeek;
      public short day;
      public short hour;
      public short minute;
      public short second;
      public short milliseconds;
    }
    [DllImport("kernel32.dll")]
    public static extern bool SetLocalTime(ref SYSTEMTIME time);
  }
Az időbeállítását most végezzük el, úgy hogy az adott időponthoz hozzáadunk egy napot. Készítünk egy DataTime típusú változót, melybe az aktuális időpontot tároljuk, de egy napot hozzáadunk ehhez az értékhez.
    private void button1_Click(object sender, System.EventArgs e)
    {
      Win32.SYSTEMTIME st;
      DateTime dt = DateTime.Now.AddDays(1);
Következő lépésként a SetLocalTime meghívásához szükséges SYSTEMTIME struktúra feltöltését végezzük el.
      st.year = (short)dt.Year;
      st.month = (short)dt.Month;
      st.dayOfWeek = (short)dt.DayOfWeek;
      st.day = (short)dt.Day;
      st.hour = (short)dt.Hour;
      st.minute = (short)dt.Minute;
      st.second = (short)dt.Second;
      st.milliseconds = (short)dt.Millisecond;
Végső lépésként pedig meghívjuk a SetLocalTime függvényt és feladattal már végeztünk is.
      Win32.SetLocalTime(ref st);
    }

Könyv
Ez a cikk megtalálható ebben a könyvben: C# Software Offline 2002 évkönyv 296. 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 |