从Vista开始,想阻止系统关机就开始变麻烦了,不能只拦截WM_QUERYENDSESSION了,操作系统只给一个应用程序两秒钟的时间去保存自己的东西,两秒钟之后,不管做完了没有,Game Over!可是如果你正在刻录一张光盘呢?两秒钟是都不够的,所以Vista之后也给提供了一种方式阻止系统关机,就是 ShutdownBlockReasonCreate函数,只要调用这个函数,第一个参数传递创建主窗口的句柄,第二个参数传递一个字符串,这个字符串说明阻止关机的原因,将会显示给用户。而且msdn提示说这个API函数只能由创建主窗口的线程调用,否则将返回 ERROR_ACCESS_DENIED。而且完成后还得调用 ShutdownBlockReasonDestroy函数使系统关机能够继续进行,参数只传递上面那个窗口的句柄就可以了。

  下面这段代码就是完整实现,不能使用VS2005编译,因为自带的库还没有这俩函数,我是使用VS2010编译的,工程文件和可执行文件的下载地址在文章最下方。

Windows 7下阻止系统关机相关推荐

  1. Windows XP下实现定时关机的简单方法

    定时关机 Windows XP下实现定时关机的简单方法. 指定系统在22分钟后自动关闭:点击"开始→运行",在"打开"中输入命令"Shutdown - ...

  2. Windows Xp下清除系统垃圾

    第一步:打开记事本,在电脑屏幕的左下角按"开始→程序→附件→记事本",复制以下内容到记事本中: @echo off echo 正在清除系统垃圾文件,请稍等...... del /f ...

  3. Qt - 阻止系统休眠方法

    1. Windows下阻止系统休眠 有的程序在运行过程中需要阻止系统休眠以保证正常地工作,比如常见的迅雷,在Qt开发中实现这样的效果只需要增加一行代码即可. 在main函数中增加如下代码: SetTh ...

  4. C++Qt开发——阻止系统休眠方法

    1. Windows下阻止系统休眠 有的程序在运行过程中需要阻止系统休眠以保证正常地工作,比如常见的迅雷,在Qt开发中实现这样的效果只需要增加一行代码即可. 在main函数中增加如下代码: SetTh ...

  5. 在Windows XP/2000下拒强行关机

    在Windows XP/2000下拒强行关机 从去年8月到现在,冲击波和震荡波让无数人的爱机无数次重启,折腾得要命.当然现在有了补丁,有了专杀工具,它们的威力已大大减弱.但还是常有一些人遭受它们的毒害 ...

  6. C#捕获windows关机事件,在系统关机前做一些自己想做的事

    C#捕获windows关机事件,在系统关机前做一些自己想做的事: 有些时候我们可能想在Windows关机时记录或处理一些事情,这里提供几种方法. 方法一: /// <summary>/// ...

  7. Windows XP下如何设置电脑定时关机

     我们在使用电脑经时,有时候会遇到一些紧急情况,需要暂时离开电脑,可是我们的电脑正在执行任务.比如下载资料.一些视频文件格式转换等等!我们知道电脑关闭还需要多长时间,也就是这些任务执行完毕还需要多长的 ...

  8. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示"配置Windows Update已完成30%请勿关闭计算机"问题的解决方法 在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界 ...

  9. Windows 10下安装Elementary OS双系统

    本文毫无技术含量,望周知,勿喷.写这篇教程仅仅是为了记录下安装双系统的过程,方便以后折腾. 长期使用Windows操作系统总会带来审美疲劳或者累觉不爱,那么Linux就是一个新大陆.Elementar ...

最新文章

  1. hdu 1228 A+B (字符串处理) 水
  2. 程序自动启动_如何在Gnome Shell上自动启动程序
  3. 应用深度学习(台大陈蕴侬李宏毅) Part1
  4. 贪心算法——洛谷(P3817)小A的糖果
  5. 利用vuex和localStorage实现vue菜单权限管理(笔记)
  6. JS搜索省份匹配出省份的所有城市
  7. 利用beego开发网站(一)
  8. 基于MS强度或计数的数据依赖法非标记定量蛋白质组学的蛋白质互作分析(二)
  9. 【软考系统架构设计师】2010年下系统架构师案例分析历年真题
  10. Linux环境下YUM和DNF详细介绍
  11. 3.6 OrCAD中元器件应该怎么进行镜像与翻转?
  12. java 埋点_数据采集之js埋点
  13. 蓝队在攻防比赛中常用的防护手段汇总
  14. 快速列出字母+数字的全部组合
  15. PMP学习笔记 第13章 项目相关方管理
  16. C:\Users\zhen\AppData\Local\Android\Sdk\platform-tools\adb'' finished with non-zero exit value 1
  17. 【大厂面试】堆的内存结构及GC垃圾回收机制
  18. 在web 开发中input file 中调用摄像头
  19. 分享六个程序员赚100万的方法
  20. Asp.Net Web控件 (五)(可分页Repeater的使用)

热门文章

  1. Minified React error #185;
  2. poi填充word(poi-tl)
  3. 伯克利2019fall 最新课程
  4. 【开发者必看】【Health kit】运动健康服务典型问题合集
  5. APP——启动页、登录功能点体验
  6. 阿里突袭腾讯游戏 这场战役有的一拼
  7. Android解决Unity游戏从后台返回黑屏问题
  8. Spring TransactionManager
  9. 教你在多个视频中随机抽帧画面出来,置入到各个视频封面上
  10. Python学习——正则表达式与re模块实现字符串计算器