MPowerOFF(モニターの電源をOFF)

MPowerOFF はフリーウェアです。
スマートフォンの様にモニターの電源 OFF(モニターのスタンバイ状態) が行えます。
離席時の節電になります。



対象の .NET Framework が導入済みであれば Windows のバージョンに関係なく動作します。
Windows 8.1/10 用は Windows8.1/10 に .NET Framework 3.5 を導入したくない方用です。


■既知の問題

  • Windows 10 で実行直後にマウスを動かし解除するとスタートメニューが表示されなくなる事がある
    [Win]キー+[L]キーで一度ロック画面を表示させると直ります(Ctrl+Alt+DelからロックでもOK)
  • 実行すると HDD のアクセスが急増する事がある
    モニターの電源が切れる事で Windows が PC 未使用と判断し、デフラグやウィルススキャンなどを開始する為です

■動作環境

.NET Framework Version 2.0 以上がインストールされている Windows なら動作すると思います。
※.NET Framework は Windows Vista 以上の OS に標準搭載

< 動作確認済み >
  • Windows 10 Pro(64bit) ビルド 10586.104(1511) + .NET Framework 4.6.1
  • Windows XP Home Edition(32bit) Service Pack 3 + .NET Framework 3.5 SP1(2.0 SP2)
  • Windows Vista Business(32bit) Service Pack 2 + .NET Framework 3.5 SP1
  • Windows 7 Home Premium(64bit) Service Pack 1





■インストール方法

ダウンロードしたzipファイルの中に入っているファイルを取り出してください。そのまま使えます。


■使用方法

MPowerOFF をダブルクリックすると3秒後にモニターの電源が OFF(スタンバイ状態) になります。


< 警告が表示される場合 >




以下の手順を行うと、次回から警告は表示されなくなります。
  1. MPowerOFF.exe を右クリックしてプロパティを表示
  2. 『ブロックの解除』ボタンをクリック
  3. 『OK』ボタンをクリック

■アンインストール方法

インストール時に展開したファイルを削除してください。
レジストリは使用していません。





■著作権/免責など

  • 著作権は当サイト(h-pg.blogspot.com)管理人にあります
  • ソフトウェアは各自の責任にてご利用ください
    ソフトウェアを利用した結果、利用者および第三者が直接的および間接的な、いかなる損害・不具合が発生した場合でも作者は一切の責任を負いません、ご了承ください
  • 個人の範囲内でリバースエンジニアリング、改変を行うのは自由です
  • オリジナルの複製(コピー)、再配布は自由です
    再配布の際は本ソフトウェアのみ配布してください
    ダウンローダーやツールバーといったソフトウェアとの抱き合わせ配布を禁止します
    再配布の連絡は不要です

■開発環境
  • Windows XP/Vista/7 用
    OS:Microsoft Windows Vista Business(32bit) 日本語 ServicePack 2
    IDE:Microsoft Visual C# 2008 Express Edition 日本語 Service Pack 1
    Framework:Microsoft .NET Framework Version 2.0 SP2
  • Windows 8.1/10 用
    OS:Microsoft Windows 10 Pro(64bit) 日本語 ビルド 10586.104(1511)
    IDE:Microsoft Visual Studio Professional 2013 日本語 Update 5
    Framework:Microsoft .NET Framework Version 4.6.1

■更新履歴
  • 2016.02.18 (1.0.5891.33041)
    ターゲット Framework を .NET Framework 4 でリビルド(ソースコード変更なし)
  • 2015.02.28 (1.0.5537.36120)
    秒数を1秒から3秒に変更
    コンソールプロセスが残る場合がある為フォームアプリに変更
  • 2014.12.31 (1.0.0.0)
    公開




■ソースコード(初期Ver)

API を呼んでいるだけです。
class Monitor : Form
{
    [DllImport("user32")]
    private static extern IntPtr SendMessage(IntPtr hWnd, int msg, IntPtr wParam, IntPtr lParam);

    private const int SC_MONITORPOWER = 0xF170;
    private const int WM_SYSCOMMAND = 0x0112;

    public Monitor()
    {
        PowerOFF();
    }

    private void PowerOFF()
    {
        System.Threading.Thread.Sleep(1000);

        // -1 ON
        //  1 Standby
        //  2 OFF
        SendMessage(this.Handle, WM_SYSCOMMAND, (IntPtr)SC_MONITORPOWER, (IntPtr)2);
    }
}