要退出Wi n d o w s ,需要用到下面两个A P I 函数中的一个:
E x i t Wi n d o w s ( )或E x i tWi n d o w s E x ( )。
E x i t Wi n d o w s ( )函数是从1 6 位W n d o w s 移植过来的。
在1 6 位W n d o w s 中,需要设置有关选项,以允许退出Wi n d o w s 后
再重新启动Wi n d o w s 。不过,在Wi n 3 2 中,这个函数只是注销当前用户,
然后让其他用户登录。
现在最好用E x i t Wi n d o w s E x ( )函数,这个函数能够注销当前用户、关闭
Wi n d o w s ,或者在关闭Wi n d o w s 后重新启动它。下面演示上述函数的用法。
unit MainFrm;
interface
uses
SysUtils,Windows,Messages,Classes,Graphics,Controls,Forms,Dialogs,
StdCtrls,Extctrls;
type
TMainForm = class(TForm)
btnExit:TButton;
rgExitOptions:TRadioGroup;
procedure btnExitClick(Sender:TObject);
end;
var
MainForm:TMainForm;
implementation
{$R *.DFM}
procedure TMainForm.btnExitClick(Sender:TObject);
begin
case rgExitOptions.ItemIndex of
0: Win32Check(ExitWindows(0,0)); //退出,然后以另外一个用户身份登录
1: Win32Check(ExitWindows(EWX_REBOOT,0)); //退出并重启
2: Win32Check(ExitWindows(EWX_SHUTDOWN,0)); //退出并关闭系统
3: Win32Check(ExitWindows(EWX_LOGOGG,0));
//退出/注销/以另外一个用户身份登录
end;
end;
end.