c# [WM] utrzymanie podświetlenia LCD

0

Witam,

znacie jakiś sposób na to, żeby aplikacja utrzymywała podświetlenie LCD w trakcie swojego działania?
Chodzi mi o to, żeby nie wygasiło się w trakcie działania.

Chodzi oczywiście o Windows Mobile

0

Hej
Kiedyś w projekcie użyłem takiego tworu:

[DllImport("coredll.dll")]
private static extern void SystemIdleTimerReset();

public static void timerReset() {
    try
    {
        SystemIdleTimerReset();
    }
    catch { }
}
0

rozumiem, że cyklicznie wywoływałeś metodę timerReset()?

0

Tak. Był sobie timerek i między innymi odpalał tą metodę. Da się jeszcze ustawić to w rejestrze ale nie jest to zalecana metoeda, bo nawet gdy nasza aplikacja nie działa to telefon i tak świeci cały czas.

0

mam wątek do nasłuchiwania tcp i przykażdym obrocie nieskończonej pętli wywołuje tą metodę - ale niestety podświetlenie przygasa... :?

0

hmmmm. Przygasa ale telefon się nie usypia.

1

Ja się kiedyś taką klasą wspomagałem:

 public class WinCEHelper
    {
        public enum CEDevicePowerState
        {
            D0 = 0,    // Full On
            D1,        // Low On
            D2,        // Standby
            D3,        // Sleep
            D4,        // Off
        }

        [DllImport("coredll.dll", SetLastError = true)]
        static extern IntPtr SetPowerRequirement(string device, CEDevicePowerState ceDevicePowerState, uint deviceFlags, IntPtr systemState, ulong stateFlags);

        [DllImport("coredll.dll", SetLastError = true)]
        static extern int ReleasePowerRequirement(IntPtr handle);

        [DllImport("CoreDll.dll")]
        private static extern void SystemIdleTimerReset();

        public static void KeepBacklightOn()
        {
            if (Environment.OSVersion.Platform == PlatformID.WinCE)
            {
                WinCEHelper.SystemIdleTimerReset();
                WinCEHelper.SetPowerRequirement("BKL1:", CEDevicePowerState.D0, 1, IntPtr.Zero, 0);
            }
            else
                return;
        }
    }

Oczywiście metoda KeepBacklightOn wywoływana jest cyklicznie w pętli.

0
dam1en napisał(a)

hmmmm. Przygasa ale telefon się nie usypia.

rzeczywiście - telefon się nie usypia, ale metoda kolegi Mendoza jest dla mnie bardziej trafiona - zależało mi stricte na podświetleniu :)
dzięki!

1 użytkowników online, w tym zalogowanych: 0, gości: 1