用Win32写的定时关机程序
由于本人记性不太好,晚上经常忘记关电脑,白白浪费了很多的电。在网上也找了一些定时关机的软件,想到最近自己也在学习VC++,就想自己写一个定时关机的小程序,正好也可以检验自己所学的东西。
程序源码下载地址:点击下载
先来看看效果图:
写的比较简陋,但是只要能实现功能就好了。
写Win32应用程序首先要有WinMain函数:
int APIENTRY _tWinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow)
{
UNREFERENCED_PARAMETER(hPrevInstance);
UNREFERENCED_PARAMETER(lpCmdLine);
g_hInstance = hInstance;
DialogBox(hInstance, (LPCTSTR)IDD_MAIN, NULL, DlgProc);
return 0;
}
在WinMain中调用DailogBox()弹出一个对话框,下面就是对消息的处理。
INT_PTR CALLBACK DlgProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
int wmId;
switch(uMsg)
{
case WM_INITDIALOG:
g_hWnd = hWnd;
InitDialog();
break;
case WM_CLOSE:
Shell_NotifyIcon(NIM_DELETE, &g_nidTray);
EndDialog(hWnd, 0);
break;
case WM_TIMER:
ProcessTimer();
break;
case WM_SIZE:
if(wParam == SIZE_MINIMIZED)
{
ShowWindow(g_hWnd, SW_HIDE);
}
break;
case NW_SHELLNOTIFY:
switch(lParam)
{
case WM_LBUTTONDBLCLK:
ShowWindow(g_hWnd, SW_SHOWDEFAULT);
SetForegroundWindow(g_hWnd);
break;
case WM_RBUTTONUP:
{
POINT ptPosition;
GetCursorPos(&ptPosition);
SetForegroundWindow(g_hWnd);
TrackPopupMenu(GetSubMenu(g_hMenu, 0), TPM_LEFTALIGN | TPM_LEFTBUTTON, ptPosition.x, ptPosition.y, 0, g_hWnd, NULL);
}
break;
}
break;
case WM_COMMAND:
wmId = LOWORD(wParam);
switch(wmId)
{
case IDBTN_SHUTDOWN:
DateTime_GetSystemtime(GetDlgItem(g_hWnd, IDDT_TIME), &g_stShutdown);
SetTimer(hWnd, ID_TIMER, 1000, NULL);
ChangeEnable(FALSE);
break;
case IDBTN_CANCEL:
KillTimer(hWnd, ID_TIMER);
UpdateRemainTime(NULL);
ChangeEnable(TRUE);
break;
case IDM_SHOW:
ShowWindow(g_hWnd, SW_SHOWDEFAULT);
SetForegroundWindow(g_hWnd);
break;
case IDM_EXIT:
SendMessage(g_hWnd, WM_CLOSE, 0, 0L);
break;
default:
return DefWindowProc(hWnd, uMsg, wParam, lParam);
}
break;
}
return 0;
}
主体部分就是上面的内容,想要完整的程序源码可以去下载。
程序源码下载地址:点击下载
用Win32写的定时关机程序相关推荐
- 用bat写一个定时关机程序
用Windows自带的命令行工具shutdown.exe来编写批处理定时关机程序.下面是一个简单的bat脚本示例: 方法一 设置秒数关机 打开记事本复制下面信息进去->另存为.bat文件-> ...
- c语言定时开关程序,C语言写的简单的定时关机程序
写一个定时关机的小程序,可以立即关闭计算机,也可以一段时间后关闭计算机. 这里主要考察system()命令. 代码实现: #include #include #include int main() { ...
- java语句电脑定时关机_月光软件站 - 编程文档 - Java - windows定时关机程序
应网友yangxjn需要写的一个windows定时关机程序 . /** * Created by IntelliJ IDEA. * autor:cofbean * Date: 2004-3-10 * ...
- c 语言让电脑自动关机,C语言编写简单的定时关机程序
写一个定时关机的小程序,可以立即关闭计算机,也可以一段时间后关闭计算机. 这里主要考察system()命令. 代码实现: #include #include #include int main() { ...
- c语言怎么自定义关机时间,C语言编写简单的定时关机程序
搜索热词 写一个定时关机的小程序,可以立即关闭计算机,也可以一段时间后关闭计算机. 这里主要考察system()命令. 代码实现: #include #include #include int mai ...
- Swing定时关机程序
本人新手一个,前几天看了一个网上写的定时关机小程序,我就尝试写了一个,程序很简单,毕竟我学习时间还是很短暂. 转载于:https://blog.51cto.com/listar/1198088
- Java自动定时关机程序
这是本人的第一次写Java博客,先来写一个简单的,很多小伙伴以前应该都试过自动定时关机,这次给大家带来自动定时关机的代码和取消定时关机的代码. import java.io.IOException;p ...
- Python-Tkinter和PyInstaller简介及定时关机程序的简易实现
欢迎转载,转载请注明出处,感谢! Tkinter简介 Tkinter的基本概念 1. Widgets(窗口小部件) 2. Geometry Management(几何管理) 3. Event Hand ...
- 如何用C语言写一段关机程序,恶搞代码,很简单的呦
如何用C语言去写一段关机程序? 有的初学者觉得C语言编程太枯燥了,想要写个程序来太难了,甚至有的人在学习了C之后就觉得C语言只能去写一些黑白框里的简单程序,其实不是的,C语言是一种面向过程的开发语言, ...
最新文章
- linux cat 查看文件内容 不带#号的,Linux下如何不用cat命令读取文件内容
- 最新开源无监督单目深度估计方法,解决复杂室内场景难训练问题,效果性能远超SOTA...
- Nature子刊:宏基因组组装基因组实现谱系解析
- python获取文件路径
- 使用%的符号问题(只与被除数有关)
- ORACLE 导空表结构
- 寻找最大的K个数,Top K问题的堆实现
- ubuntu搭建nodejs生产环境——快速部署手册
- 【script】python多线程模块threading的使用
- 果断放弃gnome 3
- nginx linux详细安装部署教程,Nginx Linux详细安装及部署实战
- Nginx端口映射(外网访问)
- 【美赛】全面助力2023年美国大学生数学建模竞赛,祝大家取得好成绩
- ANSYS APDL学习(5):ANSYS输入文件input file 的编写和调试方法
- 数据库插入数据时报错(使用sqlyog创建数据库表插入中文数据时报错Incorrect string value: ‘\xE4\xBB\x8E\xE5\x85\xA5…’ for column ‘)
- ⌈Linux_感受系统美学⌋ 一步一步迈向系统底层 - 寻觅Linux奥秘,探寻Linux下权限管理周边属性
- 你有多久没有体会过“饥饿”的感觉?写在袁隆平仙逝的第7天
- 木纤维增强聚丙烯复合材料:压缩和注塑成型工艺
- JSP与JavaScript交互之(一)成绩信息输入的奖学金评定
- Spring-04-Spring的入门配置