今天在項目開展中有一個需求,開發一個程序在一定時間內可以讓電腦自動開關監視器
具體實現代碼如下:
1、引用API
[DllImport("user32.dll", CharSet = CharSet.Auto)]
public static extern IntPtr SendMessage(IntPtr hWnd, UInt32 Msg, IntPtr wParam, IntPtr lParam);
2、具體實現
/// <summary>
/// 關閉監視器
/// </summary>
/// <param name="control">this</param>
/// <returns>返回值:True表示成功 False表示失敗</returns>
public bool OffScreen(Control control)
{
try
{
SendMessage(control.Handle, (uint)0x0112, (IntPtr)0xF170, (IntPtr)2);
return true;
}
catch
{
return false;
}
}
/// <summary>
/// 打開監視器
/// </summary>
/// <param name="control">this</param>
/// <returns>返回值:True表示成功 False表示失敗</returns>
public bool OpenScreen(Control control)
{
try
{
SendMessage(control.Handle, (uint)0x0112, (IntPtr)0xF170, (IntPtr)(-1));
return true;
}
catch
{
return false;
}
}
本文介绍了一种通过调用API实现电脑监视器自动开关的方法。利用C#编写了一个简单的程序,该程序能够发送特定消息来关闭或打开连接到电脑上的监视器。
776

被折叠的 条评论
为什么被折叠?



