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

关于定时关机时出现的问题

编辑:说三道四文库 发布时间:2017-05-23 05:36
HTML文档下载 WORD文档下载 PDF文档下载
我在编写定时关机时,有时遇到别的程序优先级很高,会报出错误,比如说窗口handle error ,请高手告诉之。
NT下要先得到权限的,相关的例子很多,找找就能有一大把
FAQ 里的!


==========================================================================
Declare  Function  AdjustTokenPrivileges  Lib  "advapi32.dll"  Alias  "AdjustTokenPrivileges"  (ByVal  TokenHandle  As  Long,  ByVal  DisableAllPrivileges  As  Long,  NewState  As  TOKEN_PRIVILEGES,  ByVal  BufferLength  As  Long,  PreviousState  As  TOKEN_PRIVILEGES,  ReturnLength  As  Long)  As  Long  
 
Declare  Function  OpenProcessToken  Lib  "advapi32.dll"  Alias  "OpenProcessToken"  (ByVal  ProcessHandle  As  Long,  ByVal  DesiredAccess  As  Long,  TokenHandle  As  Long)  As  Long  
 
这是一个例子:  
Option  Explicit    
 
Private  Type  LUID  
UsedPart  As  Long  
IgnoredForNowHigh32BitPart  As  Long  
End  Type    
 
Private  Type  TOKEN_PRIVILEGES  
PrivilegeCount  As  Long  
TheLuid  As  LUID  
Attributes  As  Long  
End  Type    
 
'Beginning  of  Code  
 
Private  Const  EWX_SHUTDOWN  As  Long  =  1  
Private  Const  EWX_FORCE  As  Long  =  4  
Private  Const  EWX_REBOOT  =  2    
   
 
Private  Declare  Function  ExitWindowsEx  Lib  "user32"  (  _  
ByVal  dwOptions  As  Long,  ByVal  dwReserved  As  Long)  As  Long      
 
Private  Declare  Function  GetCurrentProcess  Lib  "kernel32"  ()  As  Long  
 
Private  Declare  Function  OpenProcessToken  Lib  "advapi32"  (  _  
ByVal  ProcessHandle  As  Long,  ByVal  DesiredAccess  As  Long,  _  
TokenHandle  As  Long)  As  Long  
 
Private  Declare  Function  LookupPrivilegeValue  Lib  "advapi32"  _  
Alias  "LookupPrivilegeValueA"  (ByVal  lpSystemName  As  String,  _  
ByVal  lpName  As  String,  lpLuid  As  LUID)  As  Long  
 
Private  Declare  Function  AdjustTokenPrivileges  Lib  "advapi32"  (  _  
ByVal  TokenHandle  As  Long,  ByVal  DisableAllPrivileges  As  Long,  _  
NewState  As  TOKEN_PRIVILEGES,  ByVal  BufferLength  As  Long,  _  
PreviousState  As  TOKEN_PRIVILEGES,  ReturnLength  As  Long)  As  Long  
 
 
Private  Sub  AdjustToken()    
 
Const  TOKEN_ADJUST_PRIVILEGES  =  &H20  
Const  TOKEN_QUERY  =  &H8  
Const  SE_PRIVILEGE_ENABLED  =  &H2  
 
Dim  hdlProcessHandle  As  Long  
Dim  hdlTokenHandle  As  Long  
Dim  tmpLuid  As  LUID  
Dim  tkp  As  TOKEN_PRIVILEGES  
Dim  tkpNewButIgnored  As  TOKEN_PRIVILEGES  
Dim  lBufferNeeded  As  Long    
 
hdlProcessHandle  =  GetCurrentProcess()  
 
OpenProcessToken  hdlProcessHandle,  (TOKEN_ADJUST_PRIVILEGES  Or  _  
TOKEN_QUERY),  hdlTokenHandle    
 
'  Get  the  LUID  for  shutdown  privilege.  
 
LookupPrivilegeValue  "",  "SeShutdownPrivilege",  tmpLuid    
tkp.PrivilegeCount  =  1  '  One  privilege  to  set  
tkp.TheLuid  =  tmpLuid  
tkp.Attributes  =  SE_PRIVILEGE_ENABLED    
'  Enable  the  shutdown  privilege  in  the  access  token  of  this  
'  process.  
AdjustTokenPrivileges  hdlTokenHandle,  False,  tkp,  _  
Len(tkpNewButIgnored),  tkpNewButIgnored,  lBufferNeeded    
End  Sub    
 
Private  Sub  cmdForceShutdown_Click()  
       AdjustToken  
       ExitWindowsEx  (EWX_SHUTDOWN  Or  EWX_FORCE  Or  EWX_REBOOT),  &HFFFF  
End  Sub  
 
摆脱谷歌 亚马逊向开发者正式发布地图API 为什么应该用模块取代C/C++中的头文件? Mozilla布道师:HTML5在移动端没有未来? 那些年,历史上留下浓重一笔的黑客们 林敏博士:透过设计看三星手机帝国崛起 OpenFeint血泪史:我们是如何被苹果逼死的 或免费升级:微软2013年推Windows Blue系统 取经:《捕鱼达人2》每月捞金160万美元的秘密 AWS推数据仓库服务Redshift 价格仅是Teradata IBM Oracle的十分之一 美国开展数据中心整合计划 简化政府IT运营 阿里巴巴数据交换平台——集大成于一身 [体验]Windows 8 Metro/Modern Style IE 10 Growth Hacker正席卷全球,你了解它吗? Splashtop发布Ubuntu Linux版本Streamer 性能超过VNC 10倍 Windows 8引领智能操作 人机交互进入触控时代 豌豆荚发布新版应用搜索 推出“绿色标签”机制 权威解读:苹果的未来将走向何方? Google炮轰Facebook:你们的社交已经过时了! iOS设备硬件规格完整汇总 2012 MDCC“2012移动互联网应用创新大赛与开发者面对面”专场:创所未享,携手逐梦! RIM携QNX为“2012 BlackBerry平台移动应用高校竞赛” 颁奖 BlackBerry 10 策略:用金钱吸引游戏开发者 黑莓10要来了:RIM正式开放应用提交 从RIM与微软达成exFAT授权所想到的 OpenStack中国行来到南京 中兴通讯分享电信行业应用 CSS架构目标:预测、重用、扩展、维护 黑客利用移动浏览器漏洞窃取云计算资源 地位动摇:Windows设备10月销量同比下滑21% 手机QQ浏览器4.0 Android版 极速快感 生存还是毁灭:Facebook惨败真是HTML5的错? OpenStack基金会主席:一年后成熟度超越CloudStack 在Delphi中我如何得到,打印机任务个数? 刚上来散分了 安装softice后,机器不能启动了!!!!!! datawindow的edit有editchanged事件,即一改变内容就触发,我想将这个事件加在multilineedit控件里,自定义事件要选择哪个EventID? 在存储过程中如何使用表名变量? 一点小问题,请帮帮忙 菜鸟求助 用VC对WORD文档进行一些操作,高分求救 Suspicious pointer conversion 是什么警告啊? 有哪位高手知道微软提供的的简繁互转的组件是哪个,在线等待,高分送 紧急求助!!既可以选择还可以接受用户输入的下拉选框!!万分感谢!! 在jsp页面中如何实现显示一行文字消息后再更改该文字的内容?? 高分求Excel基本操作代码,如打开关闭文件、取单元格数据之类的 关于MSHFLexGrid与ADODC的几个问题 什么是内建数据库? 请问Delphi 6怎么样才能激活Invokable向导? 安装softice后,不能启动机器了!!!!!!!! 听听StringGrid 隐藏行的好建议,别讲RowHeight[i]=0阿 关于VB调用Excel打印报表的问题 哪有电脑知识问答题? 我有项目,有谁参加??? 请问哪儿能下载模块 ming? 这样的情况还能用StringGrid吗???如果不可以那用什么?DBgrid? 致JAVAMAIL配置不成功者--即编译通过但运行不了的朋友 请问asp.net 项目开发中,页面设计与代码编写如何分工 这个地方怎么回事?(代码) 不能上网??为什么?我想不明白?? ASP包含文件问题,给分50,在线等候ING。。。。 怎樣在applet中控制button的大小和具體位置? 从Microsoft操作系统的发展中,我们可以看到操作系统最终目标是OFS,它基于一种内建数据库技术,最终什么样的数据库,也就是何为内建数据 鼠标左键按下拖动是对应的windows消息是哪个?(像WM_LBUTTONDOWE) 与市场上通过网站的web发送短信相反,web能接受短信吗?如何完成? 与市场上通过网站的web发送短信相反,web能接受短信吗?如何完成? 我有项目,有谁参加??? 要用jdbc连接两个用户怎么办? 怎样取出字符串? 请问哪里有支持代理服务器的telnet客户端? 用vbscript将list框里的多选的值读出来,急!在线等待 想在北京找个JAVA或XML及相关技术开发方面的工作(大学毕业后工作三年,然后读了统招的研究生) 用VBscript 取当前页form 中项目的值。 请问在JBuilder7中,如何引入javax.xml.parsers.*;org.xml.sax.*;org.w3c.dom.*; 急需要原代码 如何在delphi 6中的 采单加入图片背景? tomcat 问题 请指教:Wrf文件用什么软件打开呢? 请大家帮忙,谢谢 这个问题如何解决!特来请教! 怎么样去掉工具栏呀(基于单文档的应用程序)? 字符串的连接 如何使得图片(TImage)半透明显示? 想让图片有朦胧的感觉 初学者的问题:SQL Server的两个小问题,希望高手指教,多谢了!
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘