Turn Off Display - 간단한 모니터 끄기 프로그램

 

컴퓨터를 사용하다 보면 잠시 자리를 비울 때가 있습니다. 그럴 때면 간단하게 잠시 모니터만이라도 꺼두는 경우가 많죠. 또는 아예 이러한 경우를 대비해서 윈도우의 전원 관리 옵션에서 디스플레이 끄기 시간을 적절히 설정해두어 자리를 비운 후 일정 시간이 지나면 자동으로 모니터가 꺼지도록 설정해 두는 경우도 흔합니다.

 

그런데 가끔은 윈도우가 자동으로 디스플레이를 끌 때까지 기다리는 게 아니라, 바로 지금 당장 모니터를 꺼서 대기 상태로 만들고 싶을 때도 있습니다. 물론 그럴 땐 모니터 전원 버튼을 눌러서 끄면 되긴 합니다. 하지만 사용 중인 시스템이 노트북이나 태블릿과 같이 디스플레이를 끄는 것이 여의치 않은 기기일 수도 있고, 데스크탑이라고 할 지라도 모니터를 완전히 끄고 돌아와서 다시 켜는 것 자체가 귀찮을 때도 있습니다.

 

지금 즉시! 롸잇 나우!

 

 

Turn Off Display 는 바로 그럴 때 사용하는 프로그램입니다. 이 프로그램은 실행하면 즉시 모니터를 꺼서 대기(절전) 상태 만들어 줍니다. 간단하게 윈도우의 디스플레이 끄기 설정의 즉시 실행 버전이라고 생각하시면 됩니다. 윈도우의 기본 디스플레이 끄기 기능과 마찬가지로 모니터를 대기 모드로 만드는 것이기 때문에 마우스를 움직이는 것과 같이 컴퓨터를 사용하면 모니터는 곧바로 켜지게 됩니다.

 

 

프로그램은 단일 실행 파일로 윈도우 8 이상 사용자를 위한 N4 버전과, 윈도우 7 이하 사용자를 위한 N2 버전이 있습니다. 자신의 윈도우에 맞는 버전을 다운로드 받으셔서 사용하시면 됩니다.

 

블로그 다운로드 [.NET 4.0 기반]

TurnOffDisplayN4.exe

블로그 다운로드 [.NET 2.0 기반]

TurnOffDisplayN2.exe

제작 캐플(CApple)

 

 

파일을 다운로드 받으신 후 바탕 화면에 두고 사용하시거나, 작업 표시줄 같은 곳에 바로 가기로 고정하여 사용하시는 등 취향에 맞춰 사용하시면 될 듯 합니다. 필요에 의해서 간단하게 만들어 봤는데 다른 분들께도 나름 쓸만할 것 같아서 올려 봅니다. 그럼 잘 사용하세요. ^^

 

※ 다운로드시 아래와 같은 경고 메시지가 출력될 수도 있습니다. 아무런 문제 없는 파일이니 걱정하지 마세요. ^^

 

 

 

 

※ 일반적으로 처음 실행시 <파일 열기 - 보안 경고> 창이 뜨게 됩니다. 이 파일을 열기 전에 항상 확인의 체크를 풀어주시면 앞으로 해당 창이 뜨지 않고 바로 실행됩니다.

 

 

※ 이 프로그램은 VB.NET 으로 제작하였으며, N4 버전은 .NET Framework 4 Client Profile 기반, N2 는 .NET Framework 2.0 기반입니다. 일반적으로 윈도우 8, 윈도우 8.1 사용자는 N4 버전을 윈도우 7 이하 사용자는 N2 버전을 사용하시면 됩니다. 물론 관련 .NET 버전이 설치되어 있으면 아무거나 사용하셔도 상관 없습니다.

 

  - TurnOffDisplayN4 : 윈도우 8 이상 버전 사용자용

  - TurnOffDisplayN2 : 윈도우 7 이하 버전 사용자용

 

 

 

 

 

 

 

Turn Off Display - 소스 설명

 

이 단락은 나중에 제가 참고하기 위해서 남겨두는 겁니다. 제가 프로그래밍 전공도 아니고 완전 쌩초보이기 때문에 코드에 대해서 질문하시면 도움을 드릴 수 없습니다. 아무튼, Turn Off Display 는 VB.NET 을 통해 만들었으며, 참고한 소스는 아래와 같습니다.

 

http://vbcity.com/forums/t/16459.aspx

 

Const WM_SYSCOMMAND = &H112

Const SC_MONITORPOWER = &HF170

 

Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Integer, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer

 

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim pow As Integer = Cmonitor(1)

Power on = -1
'Standby = 1
'OFF = 2

End Sub

 

Function Cmonitor(ByVal state As Integer) As integer

Dim power As Integer = SendMessage(Me.Handle.ToInt32, WM_SYSCOMMAND, SC_MONITORPOWER, state)

End Function

 

 

간단하게 디스플레이를 끄는 것은 윈도우의 User32.dll 라이브러리에서 함수로 제공되고 있고, API 호출을 통해 디스플레이를 제어할 수 있는 듯 합니다. 위의 소스에서 필요한 건 모니터를 끄는 것뿐이니 간략하게 아래와 같이 프로그램을 실행하면 폼을 로드하자마자 바로 모니터를 끄고 프로그램을 종료하도록 코드를 단순화시켰습니다.

 

Public Class Form1

 

Private Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" (ByVal hWnd As Integer, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer

 

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

SendMessage(Me.Handle.ToInt32, &H112, &HF170, 2)
End

End Sub

 

End Class

 

* 모니터 끄기 = (Handle, 0x0112, 0xF170, 2)

 

 

 

이상입니다.

 

 

신고
캐플 블로그에 공개된 글은 반드시 원본 글의 링크를 포함시키는 조건으로 자유롭게 이용하실 수 있습니다.
하지만 블로그의 발전을 위하여 되도록이면 링크로 글을 소개해주시길 부탁드립니다. ^^

- 상업적인 용도의 사이트는 대상에서 제외됩니다. -
- 글에는 오류가 있을 수 있고, 추후 수정 또는 재발행될 수 있습니다. -
  1. 대박 2014.07.04 21:03 신고  댓글주소  수정/삭제  댓글쓰기
    정말 좋은 툴이네요.
  2. BlogIcon 공대이끼 2014.08.18 22:50 신고  댓글주소  수정/삭제  댓글쓰기
    제가 원하던 거예요!! 감사합니다 ㅎㅎ
  3. BlogIcon 킴요미뱀프 2014.08.21 16:37 신고  댓글주소  수정/삭제  댓글쓰기
    좋은 프로그램 감사드립니다.
    짧은 질문이 있어서 댓글 남기네요

    혹시 윈도우즈 작업 스케줄러에서
    위에서 하신 "디스플레이 끄기"가 실행될 때 (설정한 시간이 되서 자동으로 실행 될때)
    그 타이밍을 작업 스케줄러에서 이벤트라든지, 등에 방법으로 트리거(?)로 등록하고 싶은데요
    (디스플레이 끄기가 실행됬을때, 해당 작업실행)
    혹시 방법이 있을까요? 알고계시면 고견부탁드려요~
  4. mk 2014.10.02 22:27 신고  댓글주소  수정/삭제  댓글쓰기
    윈7용 다운받아서 설치할려고 하니 올바른 응용프로그램이 아니라고 나오는데,
    혹시 64bit 라서 그런가요?
  5. her 2014.10.07 15:29 신고  댓글주소  수정/삭제  댓글쓰기
    다운 받으니 트로이얀 바이러스가 포함된 파일이라네요?
  6. Slays 2014.10.12 17:54 신고  댓글주소  수정/삭제  댓글쓰기
    좋은 툴 감사드립니다. ^^
  7. BlogIcon 메리다.J 2014.11.17 18:51 신고  댓글주소  수정/삭제  댓글쓰기
    트로이목마가 나온다고 되면서 알약에서 자동치료되네요 컴퓨터 전문 블로그라 믿고 다운 받았는데 ㅠㅠ
    왜 이런거죠? 바이러스 감지 오류라해도 트로이목마라니;;
  8. BlogIcon 다송송 2014.12.01 15:33 신고  댓글주소  수정/삭제  댓글쓰기
    마우스 우클릭에 등록할수는 없을까요 ^^
  9. 2014.12.20 14:51 신고  댓글주소  수정/삭제  댓글쓰기
    오류나버리네
  10. 오오 2015.01.05 13:00 신고  댓글주소  수정/삭제  댓글쓰기
    좋네요~ 감사합니다~
  11. Cargold 2015.01.31 12:04 신고  댓글주소  수정/삭제  댓글쓰기
    ㅜㅜ 제가 찾고있던게, 바로 이겁니다!!
  12. 허허 2015.09.05 11:37 신고  댓글주소  수정/삭제  댓글쓰기
    찾던 프로그램이네요..ㅎㅎ
    아주 좋네요...ㅎㅎㅎ

  13. 감사합니다 2015.10.19 01:07 신고  댓글주소  수정/삭제  댓글쓰기
    안녕하세요. 좋은 자료 올려주셔서 감사히 받아갑니다... 그런데 제가 윈7을 사용 중이라 N2 버전을 받으려고 하니 어베스트에서 바이러스라고 감지하며 자동으로 지워버리더군요. 그래서 혹시나 하여 N4 버전을 받아서 실행해 보니 모니터 끄기가 작동하던데요. 아무래도 굳이 버전을 나누어 놓으신 것에 이유가 있을 터인데 윈7에서 N4 버전을 사용해도 괜찮은지요. 뭔가 다른 문제가 발생한다던가 하진 않을까요?
  14. 7번째감자 2015.12.19 15:18 신고  댓글주소  수정/삭제  댓글쓰기
    좋은 자료 감사합니다.
    ESET NOD32를 사용하는데 제 백신에서는 아무런 이상이 발견되지 않습니다.
    그리고 윈도우7 Ultimate 64bit에서 둘 다 이상없이 작동했습니다.
  15. 감사합니다 2015.12.22 03:56 신고  댓글주소  수정/삭제  댓글쓰기
    저는 윈도우 10 사용중이며 백신은 Avast 쓰는데 아무 진단 없었어요
    좋은 파일 올려주셔서 감사합니다
  16. BlogIcon 행인 2016.02.27 09:15 신고  댓글주소  수정/삭제  댓글쓰기
    감사합니다
  17. 감사합니다 2016.04.12 14:14 신고  댓글주소  수정/삭제  댓글쓰기
    더블클릭하면 실행 되는게 아니라 리소스 부족이라 뜨는데
    제가 컴알못이라 왜이러는건지 좀 알수 있을까요?

댓글을 달아 주세요

- 댓글에선 예의를 지켜주시기 바라며, 블로그지기는 댓글에서 따로 활동하지 않습니다.

* 티스토리 사용자는 여기를 클릭하시면 로그인 됩니다.

BBCode 안내   굵게 밑줄 기울임 취소선   취소선 취소선 취소선 취소선   왼쪽 정렬 가운데 정렬 오른쪽 정렬   코드박스 인용구 이미지   이미지 업로드-Imgur.com