C#Windowsフォームからシステムスクリーンセーバーを起動する

StackOverflow https://stackoverflow.com/questions/267728

  •  06-07-2019
  •  | 
  •  

質問

これは単純なものですが、現在構成されているスクリーンセーバーを起動する単純なc#コードを誰でも提供できますか?

役に立ちましたか?

解決

これは、スクリーンセーバーのすべての側面を操作する方法を示す優れたサイトです。スクリーンセーバーを起動するコードについては、最後のコメントを参照してください。

http://www.codeproject.com/KB/cs/ScreenSaverControl.aspx

    [DllImport("user32.dll", EntryPoint = "GetDesktopWindow")]
    private static extern IntPtr GetDesktopWindow();

    [DllImport("user32.dll")]
    private static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, int wParam, int lParam);

    //...

    private const int SC_SCREENSAVE = 0xF140;
    private const int WM_SYSCOMMAND = 0x0112;

    //...

    public static void SetScreenSaverRunning()
    {
    SendMessage

(GetDesktopWindow(), WM_SYSCOMMAND, SC_SCREENSAVE, 0);
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top