赞
踩
我有一个坏习惯,就是平时用完电脑时不关机,电脑的电就会一直耗,所以我用c++写了一个自动关机插件,大家一起看看吧
首先,认识几个函数。我在上一篇文章已经写过了,我就复制一下,偷个懒吧(勿喷)。
GetCursorPos():鼠标位置检测函数。用法:
- POINT p;
- int x,y;//定义变量
- while(1){
- GetCursorPos(&p);//将鼠标所在位置存在p中
- //x=鼠标x轴
- //y=鼠标y轴
- }
KEY_DOWN():检测鼠标按键,按下返回true,为按下返回false
KEY_DOWN(VK_LBUTTON) | 检测鼠标左键 |
KEY_DOWN(MOUSE_EVENT) | 检测鼠标右键 |
KEY_DOWN(MOUSE_WHEELED) | 检测鼠标滚轮键(非滚轮) |
所以,代码如下:
- #include<bits/stdc++.h>
- #include<windows.h>
- #define KEY_DOWN(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 1:0)
- using namespace std;
- POINT p;
- int x,y;
- int main(){
- ShowWindow(GetForegroundWindow(),0);//隐藏窗口
- int time=0;
- while(1){
- GetCursorPos(&p);
- if(p.x!=x||p.y!=y||KEY_DOWN(VK_LBUTTON)||KEY_DOWN(MOUSE_EVENT)||KEY_DOWN(MOUSE_WHEELED)){
- time=0;//如果鼠标有动作时间设为0
- x=p.x;//更新xy坐标值
- y=p.y;
- }
- if(time>=1800){
- system("shutdown -s -t 30");//定30秒后关机
- int v;
- v=MessageBox(NULL,"您已半小时没有做任何鼠标操作,为节约电量即将在30秒后关机","节电小助手",MB_ICONEXCLAMATION|MB_YESNO);//弹出提示框
- if(v==7){//如果按下否
- system("shutdown -a");//取消关机
- }
- }
- Sleep(100);
- time+=0.1;
- }
- return 0;
- }
做好后,我们可以将它放到开机自启文件夹里,打开方式:按下win+R,输入shell:Common Startup,将exe文件拖拽至当中即可实现开机自启。
本篇文章就到这里(又是一篇水文),谢谢大家。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。