📄 ufrmsysctrl.pas
字号:
unit uFrmSysCtrl;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TFrmSysCtrl = class(TForm)
rdgResolution: TRadioGroup;
btnResolution: TButton;
rdgExitWin: TRadioGroup;
btnExitWin: TButton;
btnClose: TButton;
procedure btnResolutionClick(Sender: TObject);
procedure btnExitWinClick(Sender: TObject);
procedure btnCloseClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FrmSysCtrl: TFrmSysCtrl;
implementation
{$R *.dfm}
procedure TFrmSysCtrl.btnResolutionClick(Sender: TObject);
var
lpDevMode: TDeviceMode;
X, Y: Integer;
begin
case rdgResolution.ItemIndex of
0: begin X := 1280; Y := 960; end;
1: begin X := 1024; Y := 768; end;
2: begin X := 800; Y := 600; end;
else begin X := 640; Y := 480; end;
end;
lpDevMode.dmFields := DM_PELSWIDTH Or DM_PELSHEIGHT;
lpDevMode.dmPelsWidth := X;
lpDevMode.dmPelsHeight := Y;
if ChangeDisplaySettings(lpDevMode, 0) <> DISP_CHANGE_SUCCESSFUL then
RaiseLastOSError;
end;
procedure TFrmSysCtrl.btnExitWinClick(Sender: TObject);
var
hToken : THandle;
tkPriv : TTokenPrivileges;
Zero : DWORD;
begin
OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken);
LookupPrivilegeValue(nil, 'SeShutdownPrivilege', tkPriv.Privileges[0].Luid);
tkPriv.PrivilegeCount := 1;
tkPriv.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
AdjustTokenPrivileges(hToken, False, tkPriv, SizeOf(TTokenPrivileges), nil, Zero);
case rdgExitWin.ItemIndex of
0: ExitWindowsEx(EWX_LOGOFF, 0);
1: ExitWindowsEx(EWX_REBOOT, 0);
2: ExitWindowsEx(EWX_SHUTDOWN, 0);
end;
end;
procedure TFrmSysCtrl.btnCloseClick(Sender: TObject);
begin
Close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -