MFC中获取系统无任何操作的时间

例如:系统无操作xx分钟就关闭。

// 1. 在OnInitDialog中 ,设置定时器
SetTimer(1, 1000, NULL);

// 2. 用类向导添加 WM_TIME 消息响应函数,如下

void ChelloDlg::OnTimer(UINT_PTR nIDEvent)
{
	// GetTickCount 返回从操作系统启动所经过(elapsed)的毫秒数
	LASTINPUTINFO lii = { sizeof(lii) };
	::GetLastInputInfo(&lii);
	DWORD dwIdleTime = ::GetTickCount() - lii.dwTime;//空闲时间,即无任何操作的时间。(毫秒)
	if (dwIdleTime > 5000) // > 5秒
	{
		SetWindowText(_T("五秒无任何操作。。。"));
	}
	else
	{
		SetWindowText(_T("有操作。"));
	}

	CDialogEx::OnTimer(nIDEvent);
}

常记溪亭日暮,沉醉不知归路。兴尽晚回舟,误入藕花深处。争渡,争渡,惊起一滩鸥鹭。

昨夜雨疏风骤,浓睡不消残酒。试问卷帘人,却道海棠依旧。知否?知否?应是绿肥红瘦。
原文地址:https://www.cnblogs.com/htj10/p/12465715.html