说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

关机消息的拦截 -VB资料

HTML文档下载 WORD文档下载 PDF文档下载
关机消息的拦截 -VB资料

在关机或Logff前信息的拦截

  如果我们关机或Logoff时,我们的程序有时会因而无法按正常程序结束,一般我们会在Form的Unload中一段程序结束时要做什么事,但是,如果使用者直接用开始功能菜单的关机,会使UnLoad的部份没有做到,我们现在就想办法来拦截关机(或Logoff)时的信息。

  一般来说,关机或Logff后,Windows会传依序送出WM_QUERYENDSESSION的信息给每个Process,如果中间有一个Process不能顺利结束(例如:Word修改后未存档,而出现是否存档,但我们按取消),这时该信息执行的结果会传回False(0),这时Windows也就不再继续送WM_QUERYENDSESSION给下一个Proccess。反之,如果所有的Process都可以顺利结束(也就是每个送出的WM_QUERYENDSESSION都传回True),那才代表以以顺利结束。

  不管WM_QUERYENDSESSION最后的结果是可以顺利结束或不能顺利结束,Windows会再送一个WM_ENDSESSION的信息给所有的Process,而wParam的内容便是指出是否可以顺利结束(True菜单可以,False菜单不行,在vb中则CheckwParam = 0 菜单False ,0菜单True),说到这里大概就知道该如何做啦,程序如下:
  
’以下在Form
Private Sub Form_Load()
 Dim ret As Long

 ’记录原来的Window Procedure的位址
 preWinProc = GetWindowLong(Me.hwnd, GWL_WNDPROC)
 ’设定form的window Procedure到wndproc
 ret = SetWindowLong(Me.hwnd, GWL_WNDPROC, AddressOf wndproc)
End Sub
  
Private Sub Form_Unload(Cancel As Integer)
 Dim ret As Long
 Dim fno As Long

 ’取消Message的截取,而使之又只送往原来的Window Procedure
 ret = SetWindowLong(Me.hwnd, GWL_WNDPROC, preWinProc)

 ’这里只是要看看用关机的方式结束程序时,会不会执行到这里
 fno = FreeFile
 Open "c:\tt2" For Append As fno
 Print #fno, "ccc" + vbCrLf
 Close #fno
End Sub
  
’以下在.Bas
Option Explicit
  
Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
  
Public Const GWL_WNDPROC = (-4)
Public Const WM_ENDSESSION = &H16
Public Const WM_QUERYENDSESSION = &H11
  
Public preWinProc As Long
  
Public Function wndproc(ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
 If Msg = WM_QUERYENDSESSION Then
   Debug.Print "QryEnd", wParam, lParam
 Else
  If Msg = WM_ENDSESSION Then
   If wParam 0 Then ’代表将顺利关机或LogOff,这时便得做正常结束程序的操作
     Dim fno As Long
     Open "c:\ttt" For Output As #1
     Print #1, "hahcccc5"
     Close #1
   End If
  End If
 End If

 ’将之送往原来的Window Procedure
 wndproc = CallWindowProc(preWinProc, hwnd, Msg, wParam, lParam)
End Function
性能分析十八招,你用哪一招? 流程在企业内的作用及成熟度 Gartner:至2017年Chromebook销量将增2倍 后稀缺时代思考:机器横行下的人类夹缝求生 TIOBE 2014年8月编程语言排行榜:Swift跌出Top 20 精华回顾!历届MDCC大会精彩演讲与议程汇总 《近匠》Fancy3D:亿级游戏背后的轻量级引擎 假如李小龙是程序员…… Docker已扎根新一代PaaS 三星或发布首款头戴式VR设备Project Moonlight 英特尔亚太研发总经理何京翔:数据化时代背后的智慧 云络网络科技CEO Steve Mushero:游戏行业的云运维 腾讯游戏运营管理中心总监刘栖铜:腾讯游戏云的理想与实践 一号专车产品总监曹景辉:LBS应用仍有无限的创新空间 昆仑游戏总裁张益豪:做好中国游戏的海外代理 游族首席运营官陈礼标:重点打造全球化IP 我是怎么利用微信月收入三万以上的! 我的Y Combinator黑客马拉松之感! 最炫HTML5 JavaScript框架Famo.us融资2500万美元 看板先驱David J. Anderson:看板方法拉动互联网时代敏捷变革 《近匠》增强现实开发团队LegendTech:AR技术现已加入15元豪华午餐 微软新技术:简单修改,手机摄像头摇身变3D深度相机 Black Hat USA安全隐患盘点及黑客奥斯卡颁奖 MDCC免费展位报名火热!数量有限,征集进行中 迪游信息科技CEO张晓雷:中日游戏面面观 百余款智能电视创意类应用参赛角逐 Top13 App新鲜出炉! 微信公众平台开发——如何保证access_token长期有效? 拼的就是速度!超快HTML5 2D渲染引擎Pixi.js 一周消息树:百度“涉黄”遭警告,网盘内容审核的四种方式 微信开发商现状调查:接口限制成主要困扰 行业需求多样是最大难点 小米:海外扩张需谨慎,信息安全或成最大掣肘 修改表里一个字段的类型,怎样写SQL语句? 编程高人给个流程图好吗? 用MAPI怎样取出邮件附件,急用 如何调用计算器啊? 为什么我的机器运行spy++出错啊, 关于网络流量的监控,高分 ***************动态创建DSN中的一个怪问题***************** 除了电脑程序外,还有什么物理性的方法可以清洗喷墨打印机的墨头? 请问这首歌的歌名? xmldom问题。 讨论:给个用XML的理由先,我现在只知道XML可以跨平台,提供数据接口的作用。请大侠讨论一下 如何定义全局变量? 在线等待:在DELPHI中调用windows api 的 SetFocus(),应怎样调用? 关于指针问题 有点搞不懂了!! switch的简单问题 在哪里添加全局函数 两个asp.net问题,请高手一定解答! 关于Treeview的几个问题? 怎样才能实现按返回按钮以后,自动刷新刚刚提交的页面!代码如下,请帮我改改! HELP!!! 请问VB关闭WINDOWS下面的所有窗口的命令是什么?谢谢 数据移植问题,多帮忙呀! 问来问去,也没问出个所以然来。干脆再简化一下问题吧。 如何制做帮助文件? 一个XML绑定数据集的问题? 多层数据库一问!!!!!!!!!!!!!!!!!!!!!!!!!! 关于winvnc(在线等待) 请问“数据结构”这门课主要是学什么的? 这个毛病是什么原因?(加急,肯请赐教) 在线等候?自定义控件问题? 请问知道进程的ID值和句柄,能否控制程序窗口的大小? 多层数据库疑问!!!!!!!!!!!!!!!!!!!!!!!!!!! 关于IBM AS/400 DB2数据库编程 怎么从_streamptr 中恢复 recordset? 与数据库建立联接的后续问题 早上偶然看见前女友从眼前走过,突然有种莫名的感动 歌词和音乐同步问题?winnap的歌词插件基于什么样的原理做出来? 一个菜鸟的苦恼!! 用命令行配置IIS的命令是什么? 看看这个程序到底错在哪? 查找点对象问题,各位进来帮我看看 各位朋友一定请帮忙,关系到我工作问题(不是很难) 用ASP和Javascritp或Vbscript配合将SQL Server里的数据在客户端转换成EXCEL文件 Application的问题,急 谁能告诉我《银色幻想》在哪里有得下,万分感谢!!给分多多 新開一貼,sql語句請教,急,給分!!! 局域网内指定IP出现“该静态IP地址已经使用”,原理如何,如何编程实现。 一个语句的写法,up者有分 关于数据汇总的精典SQL语句求教! 有奖捉疵 50分 怎么打*****号部分的代码总不执行啊? 6a的平方b的平方的系数、次数、项数 混合二阶偏导数相等对于二元函数,有一阶偏导数可导(fx(x,y)对y可导,fy(x,y)对x可导),则二阶混合偏导数连续对吗,即混合偏倒数相等? 炒肉之前为什么要先放点淀粉浆一下啊炒肉之前,先用少量淀粉和在肉里,这样的肉炒出来不硬,但是如果直接把肉扔到锅里,这样炒出来的肉就会很硬,有时候还会发黑,这是为什么呢.. 4a²b²的系数、次数、项数分别是什么?5分之3x²y的系数、次数、项数分别是什么?a的四次方-2a²b²+b的四次方的系数、次数、项数分别是什么? 北京初中一对一个性化教育电话大全/初中语数外物化一对一辅导 正弦交流电E=Emsinwt前三分之一周期的电压有效值(用Em表示)这个问题问了两遍,前一问里有三十分的. 棉花秆栽培平菇配方我们这里有大量的棉花秆在地里,想栽培平菇,但是不知道还需要搭配什么原料?最好有详细配方. 【说明为什么】1.马虎同学是班里有名的“小画家”,在学习了有关蝗虫的知识后,就画了一只蝗虫(如图1所示),同学们说他画错了,请你帮他指出图中的两处错误.2.你喜欢做引体向上吗?当 铁混有硅除杂fe(si)括号内为杂质 平菇的种植配料我准备了木屑、玉米芯、稻草、它们是否可以合用、配比是多少?还差些什么配料?求高人解答 初一上生物题 . 求助化学除杂:铁中含硅杂质 及化学方程式 求平菇木屑生料栽培配方?我用的是沙树干木屑,求一个栽培平菇生料的配方` 我想画些只有四五张的幼儿故事连环画挂在墙壁上想请教幼师或者绘画高手几个幼儿故事连环画 大概20多个吧(本人积分不多 ) 人在呼吸的时候会呼出氧气吗?如题,人应该是吸入氧气,然后呼出二氧化碳,有可能呼出氧气吗? 为什么什么说从公元10世纪初至公元13世纪这段时间是我国历史上“民族政权并立的时代”? y=x的3次方 ,x=1 及 X轴所围成的图形面积 高数的 铁铜铝硅在地壳中的含量排序 为什么说从公元10世纪唐朝灭亡后至公元13世纪元朝建立前的这段时期,是我国历史上 高数!求y=2x与y=3-x^2围成的图形面积 用淀粉裹完肉再炒怎么才能不粘锅?肉上面粘了淀粉然后放入锅里炒,很爱粘锅,而且弄不下来,最后还糊了.我看那些电视上大厨做饭都不粘.不要说买个不粘锅了,以前我买过一口不粘锅,很小心 玛雅文明预言公元2012年12月23日是世界末日,那他们为什么没有说明自己就在历史的长河中突然消失? 如何在PPT中添加圆环图 淀粉炒肉怎样不粘锅 为什么公元100年是2世纪,900年是10世纪如题 ppt中间透明圆环怎样建立 落花不是无情物,化作春泥更护花. 地形图中垃圾桶怎么标志 ppt里面怎么设计图形旋转动画的? 落花不是无情物,化作春泥更护花用一句话概括上面诗句中的哲理 -4a³bc²/3是几次几式,系数是_____ PPt中自定义动画 蛇螺旋转,如果想让其旋转时中心点不在中间,而是以左下角为中心点旋转怎么设? 测定铝合金中硅元素时,为什么要用碱性溶液溶解?用酸溶解不一样能溶解硅吗 画一幅画哈?一只狗,一棵树.一条河.一只乌鸦.一个垃圾桶.你要怎么画? 制作PPT时动态效果怎样做?比如做一个转动的地球呢? 落花不是无情物 化作春泥更护花什么意思?语文书里的~~~~ 下列能提高生态系统稳定性措施A减少食肉动物的数量B减少食草动物的数量C增加分解者数量D增加物种种类和数量为什么?如果一个生物数量突然增多,不是会影响到其他生物吗?怎么会提高稳定 关于求二阶偏导数问题, 勾了淀粉的肉怎么炒 世界上的第一种生物是什么? 请帮我求二阶偏导数~1.已知Z=x^3siny+y^3sin,求(ə^2z)/( əxəy)2.已知Z=ln(x+√(x^2+y^2),求(ə^2z)/( əx^2)和(ə^2z)/ ( əxəy) 炒肉怎么蘸淀粉 如图所示,一次函数y=(m-1)x-3的图象分别与x轴,y轴的负半轴相交于点a,b.则m的取值范围是? PPT中怎样让图形沿着一个看不到的圆不断循环转动. 为什么说这则短短的评语树立了我写作的信心? 2πR的系数是什么?次数是什么? 关于祝福的名言要极短的,不要复制的和英语的,要极短的 是诗的最好 祝福他人的!无反悔! 我认为你的意见是不对的意见.修改病句 若一次函数y=-2x+b的图象不经过第三象限,试确定b的取值范围 祝福的名言 塑料检查井的适用范围有哪些? 若二次函数Y=ax2-2x+3的图象不经过第三象限,求a的取值范围 有关祝福的名人名言 高数下册,对面积的曲面积分 二阶偏导数应该怎么求?本人比较愚笨,书上那个看不懂啊 谁知道祝福名言 将一个小木块轻轻放在匀速运的水平传送带,小木块受到的摩擦力方向?抱歉我想说的是 刚刚放上去的时候 这样,F=ma 是不是和加速度方向相同? 二阶偏导数请问这个偏导数求导这里(如图)该怎么求了?能详细一点吗?好的我一定追加20分.谢谢.1L辛苦了,不过答案错了。。。继续求。。。 关于“问候”的名人名言越快越好啊! 修改病句:在会上,纷纷发表自己的意见. 韩媒:韩国泡菜或将成人类非物质文化遗葡萄牙公共债务率超过130%四岁姐姐打开浴缸水龙头 意外将两岁弟网传“2013十大酷刑” 网友不满加澳总督布赖斯访问成都 与大熊猫亲密接老挝打捞出坠毁飞机机身 湍急河水加大英多地遭暴风雨袭击 逾20条河流发洪四岁姐姐打开浴缸水龙头 意外将两岁弟梅德韦杰夫访华是否标志中俄经济对话新中印战略合作伙伴关系未来发展愿景的联必和必拓调高2014财年铁矿石产量四岁姐姐打开浴缸水龙头 意外将两岁弟澳洲青睐中国游客 维多利亚州长在沪“天津狗不理与新加坡企业合作拓展亚太市意总理会见美国务卿 要求解释监听意通租客伪造房产证卖房 新\"房东\"不菲总统再称菲政府不会就香港人质事件致意总理会见美国务卿 要求解释监听意通韩国政府敦促日方删除主张争议岛屿主权中方对苏丹总统访问南苏丹并达成多项共王晨会见日本日中友协代表团无偿献血或取消年龄上限拍微电影 让环卫工当明星恩平成立强震台观测站80轮竞价!和天下2.74亿拿水口地□莆田楼市·购房问答中国新首富的文化旅游新版图纪委书记为新干部打“预防针”中信森林湖·兰溪谷(南城)沪跌0.86%失守年线书画会友 乡音浓浓荒谬可笑的星巴克咖啡价格大讨论台山用电量增幅居江门前列珠海4年前立法 至今未开过罚单仅刮五张便中得“绿翡翠”25万禅西新城引发产业资本投资热贴“政府批准”牌4层楼加到17层衣联会珍贵历史文物 赠中国华侨历史博洗眼液能给眼睛“洗澡”?首届深圳大众摄影展证监会整肃风暴升级 一周10公司被调重阳敬老,“千叟宴”可以休矣
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘