求教如何判断系统鼠标或者键盘几分钟没有响应!

xiaottyy 2010-11-02 08:45:47
我想做一个小软件,就是当键盘或者鼠标5分钟没有操作,就判断空闲,自动把屏幕黑掉,这样可以省点环保。

但是我不太清楚,如何来做这个判断,请各个高手不吝赐教。非常感谢了。
...全文
130 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaottyy 2010-11-02
  • 打赏
  • 举报
回复
private void button1_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show(Convert.ToInt32(GetLastInputTime()).ToString());
}
我用按钮无论隔多久点击,为什么只能得到156,157 ,172这三个值
xiaottyy 2010-11-02
  • 打赏
  • 举报
回复
zhangming64432
我试试去非常感谢你了
zhangming64432 2010-11-02
  • 打赏
  • 举报
回复
//添加引用 using System.Runtime.InteropServices;

//创建结构体用于返回捕获时间
[StructLayout(LayoutKind.Sequential)]
struct LASTINPUTINFO
{
//设置结构体块容量
[MarshalAs(UnmanagedType.U4)]
public int cbSize;

//捕获的时间
[MarshalAs(UnmanagedType.U4)]
public uint dwTime;
}

[DllImport("user32.dll")]
private static extern bool GetLastInputInfo(ref LASTINPUTINFO plii);
private static long GetLastInputTime() //获取键盘和鼠标没有操作的时间
{
LASTINPUTINFO vLastInputInfo = new LASTINPUTINFO();
vLastInputInfo.cbSize = Marshal.SizeOf(vLastInputInfo);

//捕获时间
if (!GetLastInputInfo(ref vLastInputInfo)) return 0;
return Environment.TickCount - (long)vLastInputInfo.dwTime;
}
xiaottyy 2010-11-02
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wuhuabucai 的回复:]
http://www.myext.cn/csharp/5984.html
[/Quote]

关闭屏幕这个我知道的,但是现在不知道是如何判断系统空闲
wuhuabucai 2010-11-02
  • 打赏
  • 举报
回复
http://www.myext.cn/csharp/5984.html

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧