📄 u00401.pas
字号:
unit U00401;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ShlObj, ActiveX, ComObj;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Button3: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var
tmpObject : IUnknown;
tmpSLink : IShellLink;
tmpPFile : IPersistFile;
PIDL : PItemIDList;
StartupDirectory : array[0..MAX_PATH] of Char;
StartupFilename : String;
LinkFilename : WideString;
begin
StartupFilename := 'c:\windows\Calc.exe';
tmpObject := CreateComObject(CLSID_ShellLink);
tmpSLink := tmpObject as IShellLink;
tmpPFile := tmpObject as IPersistFile;
tmpSLink.SetPath(pChar(StartupFilename));
tmpSLink.SetWorkingDirectory(pChar(ExtractFilePath(StartupFilename)));
SHGetSpecialFolderLocation(0,
CSIDL_DESKTOPDIRECTORY,
PIDL);
SHGetPathFromIDList(PIDL, StartupDirectory);
LinkFilename := StartupDirectory + '\计算器.lnk';
tmpPFile.Save(pWChar(LinkFilename),FALSE);
end;
procedure TForm1.Button2Click(Sender: TObject);
var
tmp : integer;
begin
tmp :=0;
SystemParametersInfo(SPI_SETFASTTASKSWITCH, 1, @tmp, 0); //屏蔽 Alt-Tab
SystemParametersInfo(SPI_SCREENSAVERRUNNING, 1, @tmp, 0); //屏蔽 Ctrl-Alt-Del
end;
procedure TForm1.Button3Click(Sender: TObject);
var
tmp : integer;
begin
tmp :=0;
SystemParametersInfo(SPI_SETFASTTASKSWITCH, 0, @tmp, 0); //打开 Alt-Tab
SystemParametersInfo(SPI_SCREENSAVERRUNNING, 0, @tmp, 0); //打开 Ctrl-Alt-Del
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -