怎样实现关闭系统 我知道有EXITWINDOWSEX API函数,可是不知道怎样定义怎样实现当按下Button1是关闭系统? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可直接调用:procedure TForm1.Button1Click(Sender: TObject);Begin ExitWindowsEx(EWX_POWEROFF Or EWX_SHUTDOWN,0) End ExitWindowsEx(EWX_POWEROFF Or EWX_SHUTDOWN,0) 使用API ExitWindowsEx()(1)注销 exitwindowsex(0,0)(2)重新启动以当前用户自动登陆 exitwindowsex(EWX_REBOOT,0);(2)关机 exitwindowsex(EWX_SHUTDOWN,0);(2)重新启动后用其他用户登陆 exitwindowsex(EWX_LOGOFF,0);za 如果是2000,还要有权限,可以用程序调整权限procedure TForm1.AdjustToken();varhdlProcessHandle : Cardinal;hdlTokenHandle : Cardinal;tmpLuid : Int64;tkpPrivilegeCount : Int64;tkp : TOKEN_PRIVILEGES;tkpNewButIgnored : TOKEN_PRIVILEGES;lBufferNeeded : Cardinal;Privilege : array[0..0] of _LUID_AND_ATTRIBUTES;beginhdlProcessHandle := GetCurrentProcess;OpenProcessToken(hdlProcessHandle,(TOKEN_ADJUST_PRIVILEGES Or TOKEN_QUERY),hdlTokenHandle);// Get the LUID for shutdown privilege.LookupPrivilegeValue('', 'SeShutdownPrivilege', tmpLuid);Privilege[0].Luid := tmpLuid;Privilege[0].Attributes := SE_PRIVILEGE_ENABLED;tkp.PrivilegeCount := 1; // One privilege to settkp.Privileges[0] := Privilege[0];// Enable the shutdown privilege in the access token of this// process.AdjustTokenPrivileges(hdlTokenHandle,False,tkp,Sizeof(tkpNewButIgnored),tkpNewButIgnored,lBufferNeeded);end;******************在Windows2000下关闭计算机function ShutDownSystem():BOOL;varhProcess,hAccessToken:THandle;LUID_AND_ATTRIBUTES:TLUIDAndAttributes;TOKEN_PRIVILEGES: TTokenPrivileges;BufferIsNull:DWORD;ConstSE_SHUTDOWN_NAME='SeShutdownPrivilege';beginhProcess:=GetCurrentProcess();OpenProcessToken(hprocess,TOKEN_ADJUST_PRIVILEGES+TOKEN_QUERY,hAccessToken);LookupPrivilegeValue(Nil,SE_SHUTDOWN_NAME,LUID_AND_ATTRIBUTES.Luid);LUID_AND_ATTRIBUTES.Attributes:=SE_PRIVILEGE_ENABLED;TOKEN_PRIVILEGES.PrivilegeCount:=1;TOKEN_PRIVILEGES.Privileges[0]:=LUID_AND_ATTRIBUTES;BufferIsNull:=0;AdjustTokenPrivileges(hAccessToken,False,TOKEN_PRIVILEGES,sizeof(TOKEN_PRIVILEGES),Nil,BufferIsNull);ExitWindowsEx(EWX_REBOOT, 0);ShutDownSystem:=True;end; oracle中如何查询前10条记录? 关于access做后台,在Delphi作时间查询的SQL语句,急!!!!!!!!! delphi6.0自带的菜单能改变字体的大小吗? 程序运行一段时间后,有的Label、Panel上的 Caption或者Button消失了,但能正常操作? 哪里有D7下载,还有免费的电影的网站,大哥们。 SOS!怎样获得窗体的句柄! 怎么用飞信接口发短信? 关于BusinessSkinForm皮肤的问题 easy problem 小妹?^_^?捉虫:两条语句? 救命啊 有没有类似WORD文章编辑的控件
procedure TForm1.Button1Click(Sender: TObject);
Begin
ExitWindowsEx(EWX_POWEROFF Or EWX_SHUTDOWN,0)
End
(1)注销 exitwindowsex(0,0)
(2)重新启动以当前用户自动登陆 exitwindowsex(EWX_REBOOT,0);
(2)关机 exitwindowsex(EWX_SHUTDOWN,0);
(2)重新启动后用其他用户登陆 exitwindowsex(EWX_LOGOFF,0);za
procedure TForm1.AdjustToken();varhdlProcessHandle : Cardinal;hdlTokenHandle : Cardinal;tmpLuid : Int64;tkpPrivilegeCount : Int64;tkp : TOKEN_PRIVILEGES;tkpNewButIgnored : TOKEN_PRIVILEGES;lBufferNeeded : Cardinal;Privilege : array[0..0] of _LUID_AND_ATTRIBUTES;beginhdlProcessHandle := GetCurrentProcess;OpenProcessToken(hdlProcessHandle,(TOKEN_ADJUST_PRIVILEGES Or TOKEN_QUERY),hdlTokenHandle);// Get the LUID for shutdown privilege.LookupPrivilegeValue('', 'SeShutdownPrivilege', tmpLuid);Privilege[0].Luid := tmpLuid;Privilege[0].Attributes := SE_PRIVILEGE_ENABLED;tkp.PrivilegeCount := 1; // One privilege to settkp.Privileges[0] := Privilege[0];// Enable the shutdown privilege in the access token of this// process.AdjustTokenPrivileges(hdlTokenHandle,False,tkp,Sizeof(tkpNewButIgnored),tkpNewButIgnored,lBufferNeeded);end;******************在Windows2000下关闭计算机function ShutDownSystem():BOOL;varhProcess,hAccessToken:THandle;LUID_AND_ATTRIBUTES:TLUIDAndAttributes;TOKEN_PRIVILEGES: TTokenPrivileges;BufferIsNull:DWORD;ConstSE_SHUTDOWN_NAME='SeShutdownPrivilege';beginhProcess:=GetCurrentProcess();OpenProcessToken(hprocess,TOKEN_ADJUST_PRIVILEGES+TOKEN_QUERY,hAccessToken);LookupPrivilegeValue(Nil,SE_SHUTDOWN_NAME,LUID_AND_ATTRIBUTES.Luid);LUID_AND_ATTRIBUTES.Attributes:=SE_PRIVILEGE_ENABLED;TOKEN_PRIVILEGES.PrivilegeCount:=1;TOKEN_PRIVILEGES.Privileges[0]:=LUID_AND_ATTRIBUTES;BufferIsNull:=0;AdjustTokenPrivileges(hAccessToken,False,TOKEN_PRIVILEGES,sizeof(TOKEN_PRIVILEGES),Nil,BufferIsNull);ExitWindowsEx(EWX_REBOOT, 0);ShutDownSystem:=True;end;