사용자 도구

사이트 도구

English

cuwin:cuwin_백라이트_on_ooff하기:index

CUWIN 백라이트 On / OOff하기

CUWIN 백라이트를 소프트웨어적으로 ON /OFF하는 소스코드입니다.

소스프로그램 다운

using System;
using System.Linq;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
 
namespace CuwinBacklightOnOff
{
    public partial class Form1 : Form
    {
        private const int POWER_NAME = 1;
        private const int POWER_FORCE = 0x00001000;
 
        /// <summary>
        /// "BLK1:" for CUWIN 5000/6000, "BAK1:" for CUWIN 3000/4000 series
        /// </summary>
        private const string BACKLIGHT_DEVICE_NAME = "BKL1:";  
 
        private enum DevicePowerState : int
        {
            Unspecified = -1,
            D0 = 0, // Full On: full power, full functionality 
            D1, // Low Power On: fully functional at low power/performance 
            D2, // Standby: partially powered with automatic wake 
            D3, // Sleep: partially powered with device initiated wake 
            D4, // Off: unpowered 
        }
 
        /// <summary>
        /// Sets the power state for a device
        /// </summary>
        [DllImport("coredll.dll", SetLastError = true)]
        private static extern int SetDevicePower
        (
            string pvDevice,
            int dwDeviceFlags,
            DevicePowerState DeviceState
        );
 
        /// <summary>
        /// Turns Backlight On
        /// </summary>
        private void TurnBacklightOn()
        {
            SetDevicePower(BACKLIGHT_DEVICE_NAME, POWER_NAME, DevicePowerState.D0);
        }
 
        /// <summary>
        /// Turns Backlight Off
        /// </summary>
        private void TurnBacklightOff()
        {
            SetDevicePower(BACKLIGHT_DEVICE_NAME, POWER_NAME, DevicePowerState.D4);
        }
 
        public Form1()
        {
            InitializeComponent();
        }
 
        /// <summary>
        /// On button's Click Event Hander
        /// </summary>
        private void OnButton_Click(object sender, EventArgs e)
        {
            TurnBacklightOn();
        }
 
        /// <summary>
        /// Off button's Click Event Hander
        /// </summary>
        private void OffButton_Click(object sender, EventArgs e)
        {
            TurnBacklightOff();
        }
    }
}

한단계 뒤로

cuwin/cuwin_백라이트_on_ooff하기/index.txt · 마지막으로 수정됨: 2017/11/25 02:15 저자 Comfile Technology