unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var
saverstr, savershort, saverlong : String;
begin
saverlong := 'C:WindowsPmsaver.scr'; // »õ·Î µî·ÏÇÒ screensaver
SetLength(saverstr, 256);
SetLength(savershort, 256);
// saverlongÀÌ long file nameÀÏ ¼ö ÀÖÀ¸¹Ç·Î short file nameÀ¸·Î ¹Ù²Û´Ù
GetShortPathName(PChar(saverlong), PChar(savershort), 256);
// ÇöÀç ¼³Ä¡µÈ screensaver¸¦ ±¸ÇÑ´Ù
GetPrivateProfileString('boot', 'SCRNSAVE.EXE', 'Missing',
PChar(saverstr), Length(saverstr),
'SYSTEM.INI');
// ÇöÀç ¼³Ä¡µÈ°Í°ú ¼³Ä¡ÇÒ°ÍÀÌ Æ²¸®¸é µî·Ï
if UpperCase(saverstr) <> UpperCase(savershort) then
WritePrivateProfileString('boot', 'SCRNSAVE.EXE',
PChar(savershort), 'SYSTEM.INI');
// reboot
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
// ÀÌ ¹æ¹ýÀº Á¦¾îÆÇ/µð½ºÇ÷¹ÀÌ/ȸ麸ȣ±â ¼³Á¤È¸éÀ» ¶ç¿ö¼ µî·ÏÇÑ´Ù
// ÇÏÁö¸¸ ÀÌ ¹æ¹ýÀº »ç¿ëÀÚ¿¡°Ô 'È®ÀÎ' ¹öưÀ» ´©¸£µµ·Ï ÇϹǷΠÅõ¸í¼ºÀÌ ¾ø´Ù
// C:WindowsPmsaver.scr = »õ·Î µî·ÏÇÒ screensaver
WinExec('rundll32.exe desk.cpl,InstallScreenSaver C:WindowsPmsaver.scr', SW_SHOW);
end;
end. |
|