c#.net

c# monitor on / off

우유빛 2009. 7. 16. 09:47

static bool moniter_state = true;

const int HWND_BROADCAST = 0xFFFF;

const int SC_MONITORPOWER = 0xF170;

const short WM_SYSCOMMAND = 0x0112;

 

[DllImport("user32.dll")]

static extern int SendMessage(int hWnd, short Msg, int wParam, int lParam);

 

private void button1_Click(object sender, EventArgs e)

{

    // 모니터가 켜져있다면... 끈다

    if (moniter_state)

    {

        moniter_state = !moniter_state;

        button1.Text = "모니터 켜기";

        SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, 2);

    }

    else

    {

        moniter_state = !moniter_state;

        button1.Text = "모니터 끄기";

        SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, -1);

    }

}